从SQL的数据库中导入表到ORACLE数据库里
ORACLE的库中先用存储过程清空表中所有数据,但是因为我导入的时候没有注意表名,结果导入后数据全部存储在小写字母的表中
比如ORACLE原表为TB_CUSTOM_FUNC我从SQL中将数据导入到了tb_custom_func中了,导致查询ORACLE中的表还是为空
我想把TB_CUSTOM_FUNC删掉,然后把tb_custom_func改名为TB_CUSTOM_FUNC
但是一删掉TB_CUSTOM_FUNC小写的tb_custom_func也被删了 
求教了 怎么能把大写表删掉 而不影响小写表  重命名不可行,一重命名2个都变了

解决方案 »

  1.   

    呵呵,ORACLE好像会把大写或小写的表名都变成大写。
      

  2.   

    你create表的时候,如果表名不加双引号,则要使用该表的时候不会区分大小写的,也就是大小写都是对应到相同的表上
      

  3.   

    表名应该不区分大小写啊,不过我记得system中有些表要区分大小些,如查哪个表有什么索引时,都要用大写才能查到。
      

  4.   

    drop table "TB_CUSTOM_FUNC";
    这样,就只删除大写的表
      

  5.   

    oracle中表名称不区分大小写,而且所有的表最后存储后都会成为大写
      

  6.   

    SQL> select upper('tb_custom_func') from dual;   --upper大写与lower小写对应。UPPER('TB_CUSTOM_FUNC')
    --------------------------------
    TB_CUSTOM_FUNCSQL> select 'tb_custom_func' from dual;'TB_CUSTOM_FUNC'
    --------------------------------
    tb_custom_func--LZ有所启示吗?
      

  7.   

    drop table TB_CUSTOM_FUNC;-- 默认删除大写的
    rename "tb_custom_func" to TB_CUSTOM_FUNC;-- 小写的表名在使用时必须加上双引号
      

  8.   

    drop table TB_CUSTOM_FUNC;-- 默认删除大写的 
    然后RENAMEtb_custom_func到TB_CUSTOM_FUNC的时候好像tb_custom_func中的数据会变多