zoukankan      html  css  js  c++  java
  • exp导出含有双引号的表

    由于ORACLE默认的表名都是不区分大小写,在创建表时,在数据字典中存储的表名为大写。在有些情况下,如果创建的表在表名上加上双引号("),则创建的表其表名在数据字典中不作转换。比如

    SQL> create table test1."Table1" as select * from dba_objects where rownum<=10;

    表已创建。

    SQL> select table_name from dba_tables where wner='TEST1';

    TABLE_NAME
    ------------------------------------------------------------
    T1
    T2
    Table1
    tt

    可以看到刚创建的Table1表在数据字典中为"Table1"而不是TABLE1

    在导出这样的表时,按用户导出是没有问题的:

    D:>exp test1/test1 wner=test1

    . 即将导出 TEST1 的表通过常规路径 ...
    . . 正在导出表                              T1          0 行被导出
    . . 正在导出表                              T2          0 行被导出
    . . 正在导出表                          Table1         10 行被导出
    . . 正在导出表                              tt         10 行被导出

    而要单独导出表的话,则需求作特殊处理

    D:>exp test1/test1 tables=Table1

    即将导出指定的表通过常规路径 ...
    EXP-00011: TEST1.TABLE1 不存在
    导出成功终止,但出现警告。

    将table1用双引号或单引号引起也是一样

    D:>exp test1/test1 tables="Table1"

    也是一样的结果

    用下面的写法可以成功

    D:>exp test1/test1 tables='"Table1"'

    即将导出指定的表通过常规路径 ...
    . . 正在导出表                          Table1         10 行被导出
    在没有警告的情况下成功终止导出。

    用参数文件时,由用tables='"Table1"',去掉反斜杠

    注意tables='"Table1"'这里是外面一个单引号加反斜杠再加一双引号

    转自:http://blog.itpub.net/69924/viewspace-151141

  • 相关阅读:
    二叉树的前序、中序、后序遍历
    队列&优先队列
    angularJS 初始化
    angularJS $q
    获取checkbox返回值
    ngRoute
    两个类的装饰器,内置的魔术方法
    super封装property反射
    广度优先和深度优先 父类对子类的约束 多态 鸭子模型
    继承
  • 原文地址:https://www.cnblogs.com/tangcn/p/6698125.html
Copyright © 2011-2022 走看看