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

  • 相关阅读:
    windows下的文件遍历(使用CFindFile)
    hdu 1728 搜索求最少的转向次数
    linux中vsftpd配置文件详解
    QLineEdit 自动完成(使用setCompleter,内含一个ListView)
    Qt 的内部进程通信机制
    qt 获取windows 的消息(通过MFC的DLL的透明窗体转发消息)good
    JS的类型比较与转换图
    使用C#开发ActiveX控件
    MapXtreme+Asp.net 动态轨迹
    MS SQL 日常维护管理常用脚本(二)
  • 原文地址:https://www.cnblogs.com/tangcn/p/6698125.html
Copyright © 2011-2022 走看看