>데이터 베이스 >MySQL 튜토리얼 >Oracle数据库bug,表或试图不存在,表名中包含空格

Oracle数据库bug,表或试图不存在,表名中包含空格

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-06-07 17:20:071149검색

1.开始:通过powderDesiger导出的SQL代码中的字段都是小写的,然后直接导入了oracle.2.bug:无法修改表结构(在PL/SQL Developer中)-


1.开始:通过powderDesiger导出的SQL代码中的字段都是小写的,然后直接导入了Oracle.

2.bug:无法修改表结构(在PL/SQL Developer中)---包括增加删除修改...

3.明明该表是存在的,删除时报:表或视图不存在~! 
 
第 1 行出现错误: 
ORA-00942: 表或视图不存在 
 
后来终于找出原因是因为我的表名是小写的,,而是大写的则不会出现这个问题。 
正常情况下....数据字典里面的数据都是大写,,,,动态视图都是小写的........在用关键字做表或其它对象的名时用"" 
 
所以表名用""引起来就行了 
如何删除表时用了CASCADE CONSTRAINTS则会把与它相关的约束一起删除 

而需要删除的表格可以用一个select查询出来,代码如下

二.

1.生成表的时候,表名没有检查,直接建表,结果,表既有主键,又有外键,删除啊删除不了,双引号引起来没有效果

2.报bug,无效字符,或者表或视图不存在的bug

3.解决,改表名,然后删除

代码:ALTER TABLE "TBL_CERT IFICATE _TYPE" rename to "TABLE2"; 

此处,双引号引起表名,此处的双引号的作用,与之前双引号的作用不一样,之前双引号引的是小写的表名,,此处引起的是不连续的表名。

 

 

linux

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.