首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >OracleSQLCODEOra-00942意味着什么?

OracleSQLCODEOra-00942意味着什么?
EN

Database Administration用户
提问于 2014-02-12 05:48:49
回答 4查看 532关注 0票数 1

我很抱歉,如果我问了一个非常基本的问题,但我搜索了这一点,发现没有任何有用的信息。请解释一下Oracle ORA-00942代表什么?

EN

回答 4

Database Administration用户

发布于 2014-02-12 05:54:37

来自甲骨文

SQL*Loader-00942:分区字符串不是表字符串的一部分原因:指定的分区不是指定表操作的一部分:无

票数 1
EN

Database Administration用户

发布于 2014-02-12 06:05:56

SQLCODE是oracle变量,在整个会话中都是可见的,只要在Oracle中执行语句,它的值就会被修改。如果sql语句执行后没有错误,则Oracle将其值设置为0。对于所有其他错误状态,存储一个从-20000到-1不等的嵌套值。

如果编写SQLCODE=-00942,则基本上是在执行特定语句后检查存储在SQLCODE中的值是否为-00942 (即ORA-00942: table或view不存在)。如果返回的SQLCODE为负值,并且我们可以根据返回的SQLCODE处理异常部分,则Oracle将抛出异常。

票数 1
EN

Database Administration用户

发布于 2014-02-12 10:39:46

ORA-00942:表或视图不存在。

这并不一定意味着所讨论的表或视图不存在!这个错误通常是由于用户试图访问他们没有适当权限的资源--这并不是因为表实际上不存在,只是用户没有以他们想要的方式访问它的权限!

登录为sysadmin,并验证它是否存在-如果它存在,GRANT SELECT (UPDATE.对你的用户来说,不管什么都行,然后它就开始工作了。

一个示例显示了这里

代码语言:javascript
代码运行次数:0
运行
复制
GRANT SELECT, INSERT, UPDATE, DELETE ON suppliers TO smithj;

如果您发现经常这样做,则应该查看Oracle角色工具,它允许您在一条语句中向用户组有效地执行多个权限分配。

也就是说,您可以指定HR部门访问salary表,但不包括其他部门--在该表上创建人力资源角色和GRANT SELECT给任何具有HR角色的人--比在临时基础上对个人进行GRANT表访问容易得多!这是解释这里

票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/58720

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档