⑴ oracle用命令行导出sql语句文本
导出命令:
1)单表导出:exp 用户名/密码@服务器别名 tables=表名 file=d:名称.dmp
expjm110/jm110@120_2tables=ajbfile=d:ajb.dmp
多张表:
expjm110/jm110@120_2tables=(ajb,jjdwb)file=d:ajb2.dmp
2)完全导出:也就是数据库中的所有表都导出
格式:exp 用户名/密码@服务器别名 file=d:名称.dmp
expjm110/jm110@120_2file=d:jm110.dmp
导入命令:
因为导入的内容都是dmp文件,所以未涉及到单表导入的情况,统一命令格式
格式:imp 新用户名/密码@新服务器别名 file=d:名称.dmp buffer=102400000 feedback=10000 log=d:名称.txt full=y
参数:buffer:设置缓存大小,越大越好,它决定导入的速度
full:完全导入,导出表结构及存储过程等等
impjm110/jm110@120_1file=d:jm110.dmpbuffer=102400000feedback=10000log=d:jm110.txtfull=y
⑵ Oracle导入与导出整个数据库
imp
system/manager
file=bible_db
log=dible_db
full=y
ignore=y
system/manager是用户名和密码
file=bible_db
是要导入的文件
log=dible_db是生成日志的名称
full=y是导入整个文件
ignore=y是忽略创建错误
数据库是a.dmp我想导入的时候,数据库是b
⑶ oracle怎么导出数据
Oracle导出导出有两中方式:一、利用exp imp导出导入;二、利用Oracel数据泵expdp impdp导出导入。
一、利用exp imp导出导入
exp imp 语法如下:
exp:
1) 将数据库orcl完全导出
exp system/manager@orcl file=d:\orcl_bak.dmp full=y
2) 将数据库中system用户的表导出
exp system/manager@orcl file=d:\system_bak.dmp owner=system
3) 将数据库中表table1,table2导出
exp system/manager@orcl file=d:\table_bak.dmp tables=(table1,table2)
4) 将数据库中的表customer中的字段mobile以"139"开头的数据导出
exp system/manager@orcl file=d:\mobile_bak.dmp tables=customer query=\"where mobile like '139%' \"
imp:
1) 将备份文件bak.dmp导出数据库
imp system/manager@orcl file=d:\bak.dmp
如果数据表中表已经存在,会提示错误,在后面加上ignore=y就可以了。
2) 将备份文件bak.dmp中的表table1导入
imp system/manager@orcl file=d:\bak.dmp tables=(table1)
exp imp导出导入数据方式的好处是只要你本地安装了Oracle客户端,你就可以将服务器中的数据导出到你本地计算机。同样也可以将dmp文件从你本地导入到服务器数据库中。但是这种方式在Oracle11g版本中会出现一个问题:不能导出空表。Oracle11g新增了一个参数deferred_segment_creation,含义是段延迟创建,默认是true。当你新建了一张表,并且没用向其中插入数据时,这个表不会立即分配segment。
解决办法:
1、设置deferred_segment_creation参数为false后,无论是空表,还是非空表,都分配segment。
在sqlplus中,执行如下命令:
SQL>alter system set deferred_segment_creation=false;
查看:
SQL>show parameter deferred_segment_creation;
该值设置后,只对后面新增的表起作用,对之前建立的空表不起作用,并且注意要重启数据库让参数生效。
2、使用 ALLOCATE EXTEN
使用 ALLOCATE EXTEN可以为数据库对象分配Extent,语法如下:
alter table table_name allocate extent
构建对空表分配空间的SQL命令:
SQL>select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0
批量生成要修改的语句。
然后执行这些修改语句,对所有空表分配空间。
此时用exp命令,可将包括空表在内的所有表导出。
二、利用expdp impdp导出导入
在Oracle10g中exp imp被重新设计为Oracle Data Pump(保留了原有的 exp imp工具)
数据泵与传统导出导入的区别;
1) exp和imp是客户端工具,他们既可以在客户端使用,也可以在服务端使用。
2) expdp和impdp是服务端工具,只能在Oracle服务端使用。
3) imp只适用于exp导出文件,impdp只适用于expdp导出文件。
expdp导出数据:
1、为输出路径建立一个数据库的directory对象。
create or replace directory mpdir as 'd:\';
可以通过:select * from dba_directories;查看。
2、给将要进行数据导出的用户授权访问。
grant read,write on directory mpdir to test_expdp;
3、将数据导出
expdp test_expdp/test_expdp directory=mpdir mpfile=test_expdp_bak.dmp logfile=test_expdp_bak.log schemas=test_expdp
注意:这句话在cmd窗口中运行,并且最后不要加分号,否则会提示错误。因为这句话是操作系统命令而不是SQL。
impdp导入数据:
1、给将要进行数据导入的用户授权访问。
grant read,write on directory mpdir to test_impdp;
2、将数据导入
impdp test_impdp/impdp directory=mpdir mpfile=test_expdp_bak.dmp remap_schema=test_expdp:test_impdp
⑷ 如何 oracle 导出 数据 sql 格式
导出是用ms自带的ole
db
provider访问接口导出:
1.右键要导出的数据库【任务】-》【导出数据】-》设置导出数据源
2.设置oracle为目标数据源
3.设置目标表(创建)
4.编辑字段
由于sqlserver的t-sql与oracle的pl/sql定义数据类型不一样,这里注意要修改类型:
int
->
number
(注意设置number的精度)
nvarchar
->
varchar2
(最好是nvarchar2,但ms这个驱动只提供这种转换)
datetime
->
date
也可以直接编辑sql,注意pl/sql的编写方式,编辑完之后下一步
5.这里的datetime转成date是有警告的,不过没关系,然后可以忽略出错与截断,下一步:
6.点击完成
在oracle
em里面查看刚才导出的数据表及数据
⑸ 如何用plsql从oracle中导入导出数据
方法/步骤
1
用pl/sql developer导出表的数据时有三种方式:Oracle Export,Sql Insert,pl/sql developer
2
区别
3
导出数据到excel文件
4
excel数据导入到数据库
5
PL/SQL Developer是Oracle数据库中用于导入或导出数据库的主要工具之一,这里主要介绍如何利用PL/SQL Developer导入和导出数据库,并对导入或导出时的一些注意事项进行相关说明。1、导出步骤1.1. tools ->export user object 选择选项,导出.sql文件 说明:导出的是建表语句(包括存储结构)
6
1.2. tools ->export tables-> Oracle Export 选择选项导出.dmp文件 说明:包含三种导出方式,三种方式都能导出表结构以及数据,如下:
7
第一种是导出为.dmp的文件格式,.dmp文件是二进制的,可以跨平台,还能包含权限,效率也很不错,用得最为广泛 。
8
第二种是导出为.sql文件的,可用文本编辑器查看,通用性比较好,但效率不如第一种,适合小数据量导入导出。尤其注意的是表中不能有大字段(blob,clob,long),如果有,会提示不能导出(提示如下: table contains one or more LONG columns cannot export in sql format,user Pl/sql developer format instead)。
9
第三种是导出为.pde格式的,.pde为Pl/sql developer自有的文件格式,只能用Pl/sql developer自己导入导出,不能用编辑器查看。
10
2.导入步骤:a.tools->import tables->SQL Inserts 导入.sql文件。b. tools->import talbes->Oracle Import然后再导入dmp文件。 说明:和导出类似,另外,导入之前最好把以前的表删除,当然导入另外数据库除外。
⑹ oracle 如何把数据库查询结果导出
1、打开oracle数据库,点击登陆选项,点击文件选项,点击新建选项,最后点击sql窗口;
⑺ oracle中怎么导出sql语句
可通过PL/SQL来进行导出:
1、登录PL/SQL到指定数据库。
⑻ 如何将oracle中的数据导出sql语句
plsql里,tools菜单下,选择export
table导出表,在下方的面板中选择中的sql
insert,这个就是保存为sql脚本的啦,
但要注意表字段如果有clob,blob的不能导出成sql脚本,只能用dmp