Oracle PL/SQL执行插入脚本遇ORA-00942错误求助
解决ORA-00942和COMMIT命令未知问题
针对ORA-00942: table or view does not exist错误
- 修正表引用格式:
EGITIM是可插拔数据库(PDB)名称,不是用户,你用EGITIM.BOLGELER引用表是错误的。正确格式应为[表所属用户名].BOLGELER,比如用HR用户建的表就写HR.BOLGELER;如果当前会话用户就是表所有者,直接写BOLGELER即可。 - 确认当前连接容器:确保你连接的是
EGITIMPDB而非CDB根容器,执行命令检查:
若输出不是SHOW CON_NAME;EGITIM,切换到目标PDB:ALTER SESSION SET CONTAINER=EGITIM; - 重新在PDB内授权:你之前授予的
ALL PRIVILEGES可能是在CDB根容器中操作的,切换到EGITIMPDB后重新给目标用户授权:
若表属于其他用户,需单独授予访问权限:GRANT ALL PRIVILEGES TO your_username;GRANT INSERT, SELECT, UPDATE, DELETE ON table_owner.BOLGELER TO your_username;
针对“Unknown Command: COMMIT”提示
- 检查脚本与执行工具:这个错误多因执行工具不兼容SQLPlus命令导致。先确认
COMMIT;拼写正确,无全角字符或多余空格。建议用Oracle官方工具(SQL Developer、SQLPlus)执行脚本,避免用不兼容的文本编辑器或第三方工具直接运行;若必须用其他工具,可拆分脚本为纯SQL块执行,确保工具能识别COMMIT命令。
内容的提问来源于stack exchange,提问作者sedat
相关产品推荐
相关产品推荐

