有关Oracle中“"”的问题

select * from Table1
*
ORA-00942: 表或视图不存在

SQLWKS> select * from "Table1"
2>
ID NAME
---------- --------
已选择0行。
为什么给表名加了“"”就好了?
请大家指点!谢谢!

---------------------------------------------------------------

这个表可能不是你通过sqlplus创建的,
或者创建时用了: create table "Table1" as ,此时表名是区分大小写的.
而一般情况下是不区分大小写.

如果是8i
给你个建议

spool一个文件

查询是 select 'rename ' ¦ ¦ tname ¦ ¦' to ' ¦ &brvbarupper(tname) ¦ ¦';'
from tab where tabtype = 'TABLE';

然后执行这个文件(看看这个文件内容做个简单修改就可以了,如果你知道怎么设置sqlplus显示格式就更方便了)

请把下面内容存成文本文件,假设为 c:\create.txt
set head off;
set echo off;
set term off;
set line 200;
set pages 0;
set feed off;
set verify off;
spool c:\rename.sql;

select 'rename ' ¦ ¦ tname ¦ ¦' to ' ¦ &brvbarupper(tname) ¦ ¦' ;'
from tab where tabtype = 'TABLE';

spool off;
@c:\rename.sql;
set heading on;
set term on;
set line 80;
set pages 24;
set feed on;
set echo on;
set verify on;

把这些内存保存成 c:\create.txt
然后在sqlplus中输入
@c:\create.txt;

然后一切都ok了 :)

Published At
Categories with 数据库类
comments powered by Disqus