好好的表都建成功了,在PL/SQL中编辑数据时给我来这个提示,起的我没办法了。查到如下:

oracle建表时有一个严重的问题,在此写出来,提醒大家注意:
先简单写一下错误内容,如各位已经发现过此问题并已知处理方法,请忽略此邮件内容,以节省时间。
简单的说就是如在ORACLE建表时的SQL中表名用引号括起来了,则以后对此表的所有操作都必须把此表名用引号括起来,否则报“表不存在”。
以下为错误详细介绍:
错误现象:我先用PowerDesigner生成数据库建表脚本,然后在MyEclipse中执行此脚本生成数据库表,执行后,在MyEclipse已经可以看到此表结构。然后我用select语句查询此表数据,ORACLE提示“ORA-00942 : table or view does not exist ”,表或视图不存在。但我用MyEclipse生成的SQL来查询此表数据,ORACLE没有报错。
建表语句简写如下:
create table "Test01"
(
"id" int,
"name" varchar(20)
);
试过的手写select语句如下:select * from Test01; select * from hie.Test01; select * from hie.hieuser.Test01; select * from hie.Test01;(hie是数据库实例名,hieuser是数据库用户名)
错误分析:MyEclipse自动生成的SQL为:select "id", "name" from "hieuser"."Test01",发现MyEclipse自动生成的SQL把相关标识名用引号包围,看来ORACLE对引号很感冒,据此在google上查询了oracle和“引号”相关的内容,结果如下:
oracle建表时,如建表的SQL同时满足以下条件,则不论在查询或新增数据时都必须把相应SQL中的表名用引号括起来,否则会报00942错误。
条件1.建表的SQL中表名用引号括起来了。
条件2.建表的SQL中表名中英文字符不全部都是大写(即包括一或多个小写英文字符,其他情况我没试过,如表名纯为“123”等情况)。
解决办法:强烈建议大家在ORACLE中建表时不要把表名用""括起来,否则把所有涉及到此表的代码中所有表名都加上引号会相当痛苦,在ColdFusion中为了防止和变量声明的引号冲突,可能还要加上转义字符,在JAVA中如果用HIBERNATE来做数据库交互的话,甚至连加引号的途径都没有,只能删除表后重新建表。
另:我今天在ORACLE 11g中遇到了这个问题,我记得我在两年前也遇到过这个问题,那时我记不清我使用的是哪个ORACLE版本了,反正我感觉ORACLE多个版本中都存在此问题。

正如上面描述,果不其然。11g也是有这样问题的。这样怎么办啊?PL/SQL生成的脚本都是带引号的。姑且标记一下。以后有机会再处理一下这个问题。

另外,PL/SQL developer15里连接ORACLE 11g的时候明明加上了正确的驱动名以及依赖文件,死活都连接不上,这个时候将依赖包加入classpath环境变量吧!

ORA-00942:table or view does not exist的更多相关文章

  1. [Err] ORA-00942: table or view does not exist

    [Err] ORA-00942: table or view does not exist 当前用户加表明 例如:SCOTT."replyInfo"

  2. spring+quartz报错:Table 'BANKSTEELERP_OLD.QRTZ_TRIGGERS' doesn't exist

    spring3.2.8 + quartz2.2.1配置到application.xml中 org.springframework.beans.factory.BeanCreationException ...

  3. spring+quartz报错:Table 'XXXX.QRTZ_TRIGGERS' doesn't exist

    Spring4.3.4 + quartz2.2.1配置到application.xml中 <properties> <spring.version>4.3.4.RELEASE& ...

  4. thinkphp中SQLSTATE[42S02]: Base table or view not found: 1146 Table错误解决方法

    随手记录下今天在thinkphp3.2.3中遇到的错误SQLSTATE[42S02]: Base table or view not found: 1146 Table 'test.file_info ...

  5. Base table or view not found

    项目 代码分细致 改为Logic, Model, Controller ,View  四个模块 $model=D("Index",'Logic'); $res=$model-> ...

  6. MySQL: Table 'mysql.plugin' doesn't exist的解决

    安装解压版MySQL以后,不能启动,日志里面出现了这个错误: MySQL: Table 'mysql.plugin' doesn't exist 这是因为mysql服务启动时候找不到内置数据库&quo ...

  7. mysql [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist (转载)

    mysql报错Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist 2013-11-2 ...

  8. Ubuntu 使用phpmyadmin,报错#1146 - Table ‘phpmyadmin.pma_table_uiprefs' doesn't exist

    cd /etc/phpmyadminsudo vim config.inc.php 修改phpmyadmin的配置文件config.inc.php $cfg['Servers'][$i]['table ...

  9. 【转】安装mysql 出现:Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist

    来源:http://blog.csdn.net/dapeng0112/article/details/37053407 本来初始化配置是这样的: scripts/mysql_install_db -- ...

随机推荐

  1. java map的默认排序问题

    import java.util.HashMap; import java.util.LinkedHashMap; import java.util.Map; import java.util.Tre ...

  2. .net单元测试初探

    写在前面 组里接手了一个在运行的票台系统,包括收银,客户体验,店内商超等子系统,要求将服务端进行云端化,以应对分店的增多和决策层对于数据的需要,而随着时间的退役和各种收费策略的改变,促销活动的展开等, ...

  3. 15个实用的jQuery代码片

    (function($) { var cache = []; // Arguments are image paths relative to the current page. $.preLoadI ...

  4. 禁止浏览.htaccess文件

    很多黑客会攻击和利用.htaccess做网站跳转,所以保护好.htaccess文件尤为重要. 在apache的httpd.conf的配置文件中 默认是已经设置了禁止对.htaccess的访问,截取相关 ...

  5. PHP制作验证码

    session_start();$a = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r',' ...

  6. Python中setuptools做什么用的?

    概括 setuptools是 Python Enterprise Application Kit(PEAK)的一个副项目,它 是一组Python的 distutilsde工具的增强工具(适用于 Pyt ...

  7. DotNetBar for Windows Forms 12.5.0.2_冰河之刃重打包版原创发布-带官方示例程序版

    关于 DotNetBar for Windows Forms 12.5.0.2_冰河之刃重打包版 --------------------11.8.0.8_冰河之刃重打包版-------------- ...

  8. leetcode 日记 162. Find Peak Element java python

    根据题目可知,输入为:一个相邻元素不相等的数列,输出为:其中一个(上)峰值的序号.并且要求时间复杂度为logn 分析:由于题目要求时间复杂度为logn,因此不能进行全部遍历.又因为只需要找到其中的一个 ...

  9. Vsftp精解之安装配置及原理(一)

    简介 Vsftp(Very Secure FTP)是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,是一款小巧而又易用FTP服务器程序,Vsftpd 在安全性.高性能及稳定性三个方面有很好 ...

  10. PHP store session with couchbase

    如何用couchbase存储session 有两种常见方式:1.采用memcache模式连接couchbase 只需两句修改: ini_set('session.save_handler', 'mem ...