*
ORA-00942: 表或视图不存在
SQLWKS> select * from "Table1"
2>
ID NAME
---------- --------
已选择0行。
为什么给表名加了“"”就好了?
请大家指点!谢谢!
17 个解决方案
#1
你去SQLPLUS里面执行不会这样的
#2
我试过了还是一样
#3
是否移值过来吧,要把它改成大写,ORAClE只认大写
#4
没有办法, 只能重新建表
#5
这个表可能不是你通过sqlplus创建的,
或者创建时用了: create table "Table1" as ,此时表名是区分大小写的.
而一般情况下是不区分大小写.
#6
SQL语句里的表名不用加“”吧
select * from dual
表示关注
select * from dual
表示关注
#7
这是我在移植过来的库里新加的表,当然是移植过来也不行
#8
如果是8i
给你个建议
spool一个文件
查询是 select 'rename '|| tname ||' to ' ||upper(tname) ||';'
from tab where tabtype = 'TABLE';
然后执行这个文件(看看这个文件内容做个简单修改就可以了,如果你知道怎么设置sqlplus显示格式就更方便了)
给你个建议
spool一个文件
查询是 select 'rename '|| tname ||' to ' ||upper(tname) ||';'
from tab where tabtype = 'TABLE';
然后执行这个文件(看看这个文件内容做个简单修改就可以了,如果你知道怎么设置sqlplus显示格式就更方便了)
#9
请把下面内容存成文本文件,假设为 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 ' ||upper(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了 :)
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 ' ||upper(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了 :)
#10
oracle的数据字典里所有元素都用大写,你在命令行里输入的sql 语句会自动全部转为大写,除非你用""括起来的名称,所以往往从其他数据库里转换来的东东都会不好用,就是这个原因,建设在移植之前先全部转为大写,这样就会比较少麻烦
#11
如果数据量少,建义楼主还是手工建好了,移植还会使数据类型变样.
#12
难道
偶上面费劲写出来的脚本
大家竟然视而不见
那你们都去重建好了~~~~~~
偶上面费劲写出来的脚本
大家竟然视而不见
那你们都去重建好了~~~~~~
#13
呵呵.
#14
不敢不敢, biti_rainy(biti_rainy) 大哥!
#15
to: biti_rainy(biti_rainy)
很想用您的方法可我用的是Oracle 8.0.5。
很想用您的方法可我用的是Oracle 8.0.5。
#16
这个问题我已经明白了,jlandzpa(jlandzpa)兄说的对。
在Oracle中如果建表时用了“"”以后要用到这个表时也要用“"”并且要区分大小写,如果建表时没用“"”那Oracle忽略大小写并自动全部改成大写。
谢谢大家的指点。
虽然biti_rainy(biti_rainy)兄说的也对,但就本问题而言还是jlandzpa(jlandzpa)兄说的最正确。我把分给jlandzpa(jlandzpa)兄了。
在Oracle中如果建表时用了“"”以后要用到这个表时也要用“"”并且要区分大小写,如果建表时没用“"”那Oracle忽略大小写并自动全部改成大写。
谢谢大家的指点。
虽然biti_rainy(biti_rainy)兄说的也对,但就本问题而言还是jlandzpa(jlandzpa)兄说的最正确。我把分给jlandzpa(jlandzpa)兄了。
#17
805也可以rename的.
#1
你去SQLPLUS里面执行不会这样的
#2
我试过了还是一样
#3
是否移值过来吧,要把它改成大写,ORAClE只认大写
#4
没有办法, 只能重新建表
#5
这个表可能不是你通过sqlplus创建的,
或者创建时用了: create table "Table1" as ,此时表名是区分大小写的.
而一般情况下是不区分大小写.
#6
SQL语句里的表名不用加“”吧
select * from dual
表示关注
select * from dual
表示关注
#7
这是我在移植过来的库里新加的表,当然是移植过来也不行
#8
如果是8i
给你个建议
spool一个文件
查询是 select 'rename '|| tname ||' to ' ||upper(tname) ||';'
from tab where tabtype = 'TABLE';
然后执行这个文件(看看这个文件内容做个简单修改就可以了,如果你知道怎么设置sqlplus显示格式就更方便了)
给你个建议
spool一个文件
查询是 select 'rename '|| tname ||' to ' ||upper(tname) ||';'
from tab where tabtype = 'TABLE';
然后执行这个文件(看看这个文件内容做个简单修改就可以了,如果你知道怎么设置sqlplus显示格式就更方便了)
#9
请把下面内容存成文本文件,假设为 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 ' ||upper(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了 :)
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 ' ||upper(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了 :)
#10
oracle的数据字典里所有元素都用大写,你在命令行里输入的sql 语句会自动全部转为大写,除非你用""括起来的名称,所以往往从其他数据库里转换来的东东都会不好用,就是这个原因,建设在移植之前先全部转为大写,这样就会比较少麻烦
#11
如果数据量少,建义楼主还是手工建好了,移植还会使数据类型变样.
#12
难道
偶上面费劲写出来的脚本
大家竟然视而不见
那你们都去重建好了~~~~~~
偶上面费劲写出来的脚本
大家竟然视而不见
那你们都去重建好了~~~~~~
#13
呵呵.
#14
不敢不敢, biti_rainy(biti_rainy) 大哥!
#15
to: biti_rainy(biti_rainy)
很想用您的方法可我用的是Oracle 8.0.5。
很想用您的方法可我用的是Oracle 8.0.5。
#16
这个问题我已经明白了,jlandzpa(jlandzpa)兄说的对。
在Oracle中如果建表时用了“"”以后要用到这个表时也要用“"”并且要区分大小写,如果建表时没用“"”那Oracle忽略大小写并自动全部改成大写。
谢谢大家的指点。
虽然biti_rainy(biti_rainy)兄说的也对,但就本问题而言还是jlandzpa(jlandzpa)兄说的最正确。我把分给jlandzpa(jlandzpa)兄了。
在Oracle中如果建表时用了“"”以后要用到这个表时也要用“"”并且要区分大小写,如果建表时没用“"”那Oracle忽略大小写并自动全部改成大写。
谢谢大家的指点。
虽然biti_rainy(biti_rainy)兄说的也对,但就本问题而言还是jlandzpa(jlandzpa)兄说的最正确。我把分给jlandzpa(jlandzpa)兄了。
#17
805也可以rename的.