Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql ORA-00942故障排除_Sql_Oracle_Oracle11g_Ora 00942 - Fatal编程技术网

Sql ORA-00942故障排除

Sql ORA-00942故障排除,sql,oracle,oracle11g,ora-00942,Sql,Oracle,Oracle11g,Ora 00942,在昨晚的一次自动测试运行中,我的20个工作线程中的一个线程崩溃了;应用程序正在尝试插入。Springframework报告ORA-00942:表或视图不存在 通过EnterpriseManager连接到数据库(11.1.0.6.0),我调出一个SQL工作表并查询表,发现(a)表现在存在(b)应该插入的行丢失(c)此线程先前插入的行存在(d)表在时间上错误前后都有行 对于一个几乎没有oracle经验的用户,我如何验证错误源于此数据库服务器,以及如何从那里返回错误的根本原因?我将尽可能靠近数据库,以

在昨晚的一次自动测试运行中,我的20个工作线程中的一个线程崩溃了;应用程序正在尝试插入。Springframework报告ORA-00942:表或视图不存在

通过EnterpriseManager连接到数据库(11.1.0.6.0),我调出一个SQL工作表并查询表,发现(a)表现在存在(b)应该插入的行丢失(c)此线程先前插入的行存在(d)表在时间上错误前后都有行


对于一个几乎没有oracle经验的用户,我如何验证错误源于此数据库服务器,以及如何从那里返回错误的根本原因?

我将尽可能靠近数据库,以确认在数据库本身中执行、提交、回滚了哪些SQL。我会设置TKPROF(查看文档,或访问以获取更多信息),看看你的应用程序实际执行了什么。这至少可以帮助您了解您期望执行的内容是否真的像它应该的那样“到达”


如果该表对调用程序“不可见”,即权限不足,则会发生ORA-00942。正如Dave K所说,该表可能已经存在,但对您的进程“不可见”


由于“昨晚”这句话,我的想法是,可能会有一个夜间过程,如备份或清理过程,导致表脱机。

您能否提供以下附加信息:1。插入是由表所有者执行的还是由具有插入权限的其他架构执行的?2.如果另一个模式插入到表中,表引用是否由所有者限定、通过私有同义词访问还是通过公共同义词访问?3.此数据库是否有包含同名表的其他架构?当这些条件中的某些条件得到满足时,Oracle出现了一些问题——不知道11g中是否仍然存在该缺陷。这是一个有趣的想法,但我相信第(d)点消除了这个问题。围绕故障的窗口非常短(以秒为单位)。我实际上得到了一行,它的时间戳与失败的插入应该具有的时间戳相同,由另一个线程提交。也就是说,如果问题是桌子变得不可见,我将如何找到根本原因?如果不知道您的环境,很难说。在我的办公室里,我会与DBA或系统管理员交谈,看看是否有任何流程在那个时候正常运行。同时询问是否有任何数据库日志。