您的位置:首页 > 数据库 > Oracle

【自家用】Oracle导出/入数据库教程

2018-03-12 12:09 316 查看

>>>>>>>> 自家用,欢迎讨论、意见、建议!喷子请大笑三声,自行离去!

    一、工具:

        Navicat(主导出/入查询);
            界面友好,主要用来查询表以及数据的导出/入情况。(自己导出的SQL,自己执行还报错,管查询就好了)。
        plsql(主导出/入主力军:导出当前用户有关的表(含索引)、序列、触发器、存储过程、视图、函数、同义词;导出常规表数据);
            使用:
                导出非数据:工具(tools) --> 导出用户对象(export user objects) --> 选择单个文件(Single file)即可。
                导出数据:工具(tools) --> 导出表(export tables)
                    注意:1)导出哪些表选择那些表。
                        2)3中导出方式的区别见《plsql-导出注意事项.png》。
                    建议:1)本人第一种方式(导出dmp文件)不能用,而且还得借住oracle的客户端/bin/exp.exe等工具,遂使用二三中方式。
                        2)第二种方式适合使用少量数据,大量数据时会有大量sql,致使文件变得臃肿,效率低下。
                            选择截断表(truncate tables)、禁止触发器(disable triggers)、禁止外键约束(disable foreign key constraints)即可
                        3)第三种方式可以选择压缩文件(compress file)会是的文件体积非常小(较第二种那是数量级的差别),效率也很高,而且能导出大字段,oracle自有的方式。
                        4)选择哪种方式导出,就还用哪种方式导入。
                        
        Dbvisualizer(主导入查询、BLOB/CLOB大字段的导出/入)
            使用:找到想要的表 --> 右击导出
            注意:1)导出编码(GBK/UTF-8)和文件格式
                2)导出数据格式的设置:
                    BLOB/CLOB:选value
                    Quote text value:选double(建议双引号)
                3)导出时可以查看下日志是否导出成功。
                4)导出/导入时编码和数据格式要一样。
                5)导入的第一个界面注意编码。
                    第二个界面注意
                        Delimiters 的选择;
                        options下的Text Quoted Between选择选double(与导出一致)。
                        Data项可以预览,设置预览行数,自适应列宽等选项。
                    第三个界面注意数据格式与导入一致就行。
                    第四个界面选择导入的表。
                    第五个界面默认就行,然后导入即可。
            坑:导入时可能会报《例:某某列最大值10,插入值12》错误?
                解决:一定是你输出输入格式没对应上,那就修改导出格式再次尝试导入吧!
        

    二、可能用到的sql:

            查询所有表的所有信息
                select   table_name,data_type  from   cols    WHERE   TABLE_name in (select t.table_name from user_tables t) and (data_type = 'BLOB'
            查询所有视图
                select * from all_views
            查询所有表:
                SELECT * FROM dba_tables
            查询该用户下表:
                select table_name from user_tables;
            查询所有对象:
                select * from dba_objects
                

    三、《建议:迁库是个细致活,耐心就好,不懂百度》

---------------------------------------------附:plsql-导出注意事项.png--------------------------------------------------

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: