EXP 命令导出数据

EXP 命令导出数据
EXP 命令导出数据

使用方法

用exp命令导出表结构,不导出表数据。只需在命令行里加一个参数rows=n即可。表示不导出表数据。

exp username/pwd@sid file=d:databak.dmp owner=(user)rows=n

******************************************************************************* *************************************

oracle exp/imp命令详解

时间:2006-06-20 14:30:55 来源:Linux联盟收集作者:上上智

E:>exp help=y

通过输入EXP 命令和用户名/口令,您可以

在用户/ 口令之后的命令:

实例: EXP SCOTT/TIGER

或者,您也可以通过输入跟有各种参数的EXP 命令来控制“导出”的运行方式。

要指定参数,您可以使用关键字:

格式: EXP KEYWORD=value 或KEYWORD=(value1,value2,...,valueN)

实例: EXP SCOTT/TIGER GRANTS=Y TABLES=(EMP,DEPT,MGR)

或TABLES=(T1: P1,T1: P2),如果T1 是分区表

USERID 必须是命令行中的第一个参数。

关键字说明(默认)

---------------------------------------------------

USERID 用户名/口令

FULL 导出整个文件(N)

BUFFER 数据缓冲区的大小

OWNER 所有者用户名列表

FILE 输出文件(EXPDAT.DMP)

TABLES 表名列表

COMPRESS 导入一个范围(Y)

RECORDLENGTH IO 记录的长度

GRANTS 导出权限(Y)

INCTYPE 增量导出类型

INDEXES 导出索引(Y)

RECORD 跟踪增量导出(Y)

ROWS 导出数据行(Y)

PARFILE 参数文件名

CONSTRAINTS 导出限制(Y)

CONSISTENT 交叉表一致性

LOG 屏幕输出的日志文件

STATISTICS 分析对象(ESTIMATE)

DIRECT 直接路径(N)

TRIGGERS 导出触发器(Y)

FEEDBACK 显示每x 行(0) 的进度

FILESIZE 各转储文件的最大尺寸

QUERY 选定导出表子集的子句

下列关键字仅用于可传输的表空间

TRANSPORT_TABLESPACE 导出可传输的表空间元数据(N) TABLESPACES 将传输的表空间列表

E:>imp help=y

可以通过输入IMP 命令和您的用户名/口令

跟有您的用户名/ 口令的命令:

实例: IMP SCOTT/TIGER

或者, 可以通过输入IMP 命令和各种自变量来控制“导入”按照不同参数。要指定参数,您可以使用关键字:

格式: IMP KEYWORD=value 或KEYWORD=(value1,value2,...,vlaueN)

实例: IMP SCOTT/TIGER IGNORE=Y TABLES=(EMP,DEPT) FULL=N

或TABLES=(T1: P1,T1: P2),如果T1 是分区表

USERID 必须是命令行中的第一个参数。

关键字说明(默认)

----------------------------------------------

USERID 用户名/口令

FULL 导入整个文件(N)

BUFFER 数据缓冲区大小

FROMUSER 所有人用户名列表

FILE 输入文件(EXPDAT.DMP)

TOUSER 用户名列表

SHOW 只列出文件内容(N)

TABLES 表名列表

IGNORE 忽略创建错误(N)

RECORDLENGTH IO 记录的长度

GRANTS 导入权限(Y)

INCTYPE 增量导入类型

INDEXES 导入索引(Y)

COMMIT 提交数组插入(N)

ROWS 导入数据行(Y)

PARFILE 参数文件名

LOG 屏幕输出的日志文件

CONSTRAINTS 导入限制(Y)

DESTROY 覆盖表空间数据文件(N)

INDEXFILE 将表/索引信息写入指定的文件

SKIP_UNUSABLE_INDEXES 跳过不可用索引的维护(N)

ANALYZE 执行转储文件中的ANALYZE 语句(Y)

FEEDBACK 显示每x 行(0) 的进度

TOID_NOVALIDATE 跳过指定类型id 的校验

FILESIZE 各转储文件的最大尺寸

RECALCULATE_STATISTICS 重新计算统计值(N)

下列关键字仅用于可传输的表空间

TRANSPORT_TABLESPACE 导入可传输的表空间元数据(N)

TABLESPACES 将要传输到数据库的表空间

DATAFILES 将要传输到数据库的数据文件

TTS_OWNERS 拥有可传输表空间集中数据的用户

***************************************************************

Oracle exp/imp导出导入工具的使用

一. 导出工具exp

1. 它是操作系统下一个可执行的文件存放目录/ORACLE_HOME/bin

exp导出工具将数据库中数据备份压缩成一个二进制系统文件.可以在不同OS间迁移

它有三种模式:

a. 用户模式:导出用户所有对象以及对象中的数据;

b. 表模式:导出用户所有表或者指定的表;

c. 整个数据库:导出数据库中所有对象。

2. 导出工具exp交互式命令行方式的使用的例子

$exp oa1/123@oracle

连接到: Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production

With the Partitioning, OLAP and Data Mining options

输入数组提取缓冲区大小: 4096 >

导出文件: EXPDAT.DMP > D:/a.dmp

(2)U(用户), 或(3)T(表): (2)U > 3

导出表数据(yes/no): yes > yes

压缩区(yes/no): yes >

已导出ZHS16GBK 字符集和AL16UTF16 NCHAR 字符集

即将导出指定的表通过常规路径...

要导出的表(T) 或分区(T: P): (按RETURN 退出) > pfdept

. . 正在导出表PFDEPT导出了83 行

要导出的表(T) 或分区(T: P): (按RETURN 退出) >return

导出成功终止, 但出现警告。

3. 导出工具exp非交互式命令行方式的例子

$exp oa1/123@oracle file=D:/all.dmp grants=y

说明:把oa1用户的所有表导出到文件D:/all.dmp

$exp oa1/123@oracle tables=(pfdept,pfuser) file=D:/all.dmp grants=y

说明:把oa1用户里两个表emp,dept导出到文件D:/all.dmp

$exp oa1/123@oracle tables=pfdept query="where predeptid=0745" file=D:/all.dmp

说明:在exp里面加上导出pfdept 的查询条件predeptid=0745

$exp parfile=username.par file=/directory1/username_1.dmp,/directory1/username_2.dmp filesize=2000M log=/directory2/username_exp.log

参数文件username.par内容

userid=username/userpassword

buffer=8192000

compress=n

grants=y

说明:username.par为导出工具exp用的参数文件,里面具体参数可以根据需要去修改

filesize指定生成的二进制备份文件的最大字节数

二.导入工具imp

1. 它是操作系统下一个可执行的文件存放目录/ORACLE_HOME/bin

imp导入工具将EXP形成的二进制系统文件导入到数据库中.

它有三种模式:

a. 用户模式:导出用户所有对象以及对象中的数据;

b. 表模式:导出用户所有表或者指定的表;

c. 整个数据库:导出数据库中所有对象。

只有拥有IMP_FULL_DATABASE和DBA权限的用户才能做整个数据库导入

imp步骤:

(1) create table (2) insert data (3) create index (4) create triggers,constraints

2.导入工具imp交互式命令行方式的例子

$ imp

Import: Release 10.1.0.2.0 - Production on 星期一9月3 08:21:32 2007

Copyright (c) 1982, 2004, Oracle. All rights reserved.

用户名: system

口令:****

连接到: Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production

With the Partitioning, OLAP and Data Mining options

导入文件: expdat.dmp> D:/all.dmp

输入插入缓冲区大小(最小为8192 ) 30720>

经由常规路径导出由EXPORT:V08.01.06创建的文件

警告: 此对象由TEST 导出, 而不是当前用户

已经完成ZHS16GBK字符集和ZHS16GBK NCHAR 字符集中的导入

只列出导入文件的内容(yes/no):no>

由于对象已存在, 忽略创建错误(yes/no):no> yes

导入权限(yes/no):yes>

导入表数据(yes/no):yes>

导入整个导出文件(yes/no):no> yes

. 正在将TEST的对象导入到SCOTT

. . 正在导入表"CMAMENU" 4336行被导入

成功终止导入,但出现警告。

3.导入工具imp非交互式命令行方式的例子

$ imp system/oracle fromuser=oa1 tables=(pfdept)

$ imp system/oracle fromuser=oa1 tables=(pfdept,pfuser)

$ imp system/oracle fromuser=oa1 touser=system

$ imp oa1/123 file = all.dmp full=y

$ imp oa1/123 file = all.dmp show=n buffer=2048000 ignore=n commit=y grants=y full=y log=D:/.log

$ imp oa1/123 parfile=params.dat

params.dat 内容

file=dba.dmp show=n ignore=n grants=y fromuser=oa1 tables=(pfdept,pfuser)

4.导入工具imp可能出现的问题

(1) 数据库对象已经存在

一般情况, 导入数据前应该彻底删除目标数据下的表, 序列, 函数/过程,触发器等;

数据库对象已经存在, 按缺省的imp参数, 则会导入失败

如果用了参数ignore=y, 会把exp文件内的数据内容导入

如果表有唯一关键字的约束条件, 不合条件将不被导入

如果表没有唯一关键字的约束条件, 将引起记录重复

(2) 数据库对象有主外键约束

不符合主外键约束时, 数据会导入失败

解决办法: 先导入主表, 再导入依存表

disable目标导入对象的主外键约束, 导入数据后, 再enable它们

(3) 权限不够

如果要把A用户的数据导入B用户下, A用户需要有imp_full_database权限

(4) 导入大表( 大于80M ) 时, 存储分配失败

默认的EXP时, compress = Y, 也就是把所有的数据压缩在一个数据块上.

导入时, 如果不存在连续一个大数据块, 则会导入失败.

导出80M以上的大表时, 记得compress= N, 则不会引起这种错误.

(5) imp和exp使用的字符集不同

如果字符集不同, 导入会失败, 可以改变unix环境变量或者NT注册表里NLS_LANG相关信息.

导入完成后再改回来.

(6) imp和exp版本不能往上兼容

imp可以成功导入低版本exp生成的文件, 不能导入高版本exp生成的文件

根据情况我们可以用

imp和exp命令导入和导出.dmp文件

Oracle数据库文件中的导入\导出(imp/exp命令) Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。 执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,DOS中可以执行时由于在oracle 8i 中安装目录ora81BIN被设置为全局路径,该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。 下面介绍的是导入导出的实例。 数据导出: 1 将数据库TEST完全导出,用户名system密码manager 导出到D:daochu.dmp中 exp system/manager@TEST file=d:daochu.dmp full=y 2 将数据库中system用户与sys用户的表导出 exp system/manager@TEST file=d:daochu.dmp owner=(system,sys) 3 将数据库中的表inner_notify、notify_staff_relat导出 exp aichannel/aichannel@TESTDB2 file= d:datanewsmgnt.dmp tables=(inner_notify,notify_staff_relat) 4 将数据库中的表table1中的字段filed1以"00"打头的数据导出 exp system/manager@TEST file=d:daochu.dmp tables=(table1) query=" where filed1 like '00%'" 上面是常用的导出,对于压缩,既用winzip把dmp文件可以很好的压缩。 也可以在上面命令后面加上com press=y 来实现。 数据的导入 1 将D:daochu.dmp 中的数据导入TEST数据库中。 im p system/manager@TEST file=d:daochu.dmp im p aichannel/aichannel@HUST full=y file=d:datanewsmgnt.dmp ignore=y

oracle表的导入导出-命令

数据导出: 1 将数据库TEST完全导出,用户名system 密码manager 导出到D:daochu.dmp中 exp system/manager@TEST file=d:daochu.dmp full=y 2 将数据库中system用户与sys用户的表导出 exp system/manager@TEST file=d:daochu.dmp owner=(system,sys) 3 将数据库中的表inner_notify、notify_staff_relat导出 exp aichannel/aichannel@TESTDB2 file= d:datanewsmgnt.dmp tables=(inner_notify,notify_staff_relat) 4 将数据库中的表table1中的字段filed1以"00"打头的数据导出 exp system/manager@TEST file=d:daochu.dmp tables=(table1) query=" where filed1 like '00%'" 上面是常用的导出,对于压缩,既用winzip把dmp文件可以很好的压缩。 也可以在上面命令后面加上 compress=y 来实现。 数据的导入 1 将D:daochu.dmp 中的数据导入 TEST数据库中。 imp system/manager@TEST file=d:daochu.dmp imp aichannel/aichannel@HUST full=y file=file= d:datanewsmgnt.dmp ignore=y 上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。 在后面加上 ignore=y 就可以了。 2 将d:daochu.dmp中的表table1 导入 imp system/manager@TEST file=d:daochu.dmp tables=(table1) 基本上上面的导入导出够用了。不少情况要先是将表彻底删除,然后导入。 注意: 操作者要有足够的权限,权限不够它会提示。 数据库时可以连上的。可以用tnsping TEST 来获得数据库TEST能否连上。 附录一: 给用户增加导入数据权限的操作 第一,启动sql*puls 第二,以system/manager登陆 第三,create user 用户名 IDENTIFIED BY 密码(如果已经创建过用户,这步可以省略)第四,GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW , DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE, DBA,CONNECT,RESOURCE,CREATE SESSION TO 用户名字 第五, 运行-cmd-进入dmp文件所在的目录, imp userid=system/manager full=y file=*.dmp

Oracle数据导入导出imp,exp命令

Oracle数据导入导出imp/exp命令10g以上expdp/impdp命令 Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以 把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。 执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行, DOS中可以执行时由于在oracle 8i 中安装目录ora81BIN被设置为全局路径, 该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。 oracle用java编写,SQLPLUS.EXE、EXP.EXE、IMP.EXE这两个文件有可能是被包装后的类文件。 SQLPLUS.EXE调用EXP.EXE、IMP.EXE所包裹的类,完成导入导出功能。 下面介绍的是导入导出的实例。 数据导出: 1 将数据库TEST完全导出,用户名system 密码manager 导出到 D:\daochu.dmp中 exp system/manager@TEST file=d:\daochu.dmp full=y 2 将数据库中system用户与sys用户的表导出 exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys) 3 将数据库中的表inner_notify、notify_staff_relat导出 exp aichannel/aichannel@TESTDB2 file= d:\datanewsmgnt.dmp tables=(inner_notify,notify_staff_relat) 4 将数据库中的表table1中的字段filed1以"00"打头的数据导出 exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=" where filed1 like '00%'" 上面是常用的导出,对于压缩,既用winzip把dmp文件可以很好的压缩。 也可以在上面命令后面加上compress=y 来实现。 数据的导入 1 将D:\daochu.dmp 中的数据导入TEST数据库中。 imp system/manager@TEST file=d:\daochu.dmp imp aichannel/aichannel@TEST full=y file=d:\datanewsmgnt.dmp ignore=y 上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。

oracle表的导入导出-命令

oracle表的导入导出-命令.txt12思念是一首诗,让你在普通的日子里读出韵律来;思念是一阵雨,让你在枯燥的日子里湿润起来;思念是一片阳光,让你的阴郁的日子里明朗起来。数据导出: 1 将数据库TEST完全导出,用户名system 密码manager 导出到D:daochu.dmp中 exp system/manager@TEST file=d:daochu.dmp full=y 2 将数据库中system用户与sys用户的表导出 exp system/manager@TEST file=d:daochu.dmp owner=(system,sys) 3 将数据库中的表inner_notify、notify_staff_relat导出 exp aichannel/aichannel@TESTDB2 file= d:datanewsmgnt.dmp tables=(inner_notify,notify_staff_relat) 4 将数据库中的表table1中的字段filed1以"00"打头的数据导出 exp system/manager@TEST file=d:daochu.dmp tables=(table1) query=" where filed1 like '00%'" 上面是常用的导出,对于压缩,既用winzip把dmp文件可以很好的压缩。 也可以在上面命令后面加上compress=y 来实现。 数据的导入 1 将D:daochu.dmp 中的数据导入TEST数据库中。 imp system/manager@TEST file=d:daochu.dmp

oracle命令行大全

SQL*PLUS命令的使用大全 Oracle的sql*plus是与oracle进行交互的客户端工具。在sql*plus中,可以运行sql*plus命令与sql*plus 语句。 我们通常所说的DML、DDL、DCL语句都是sql*plus语句,它们执行完后,都可以保存在一个被称为sql buffer的内存区域中,并且只能保存一条最近执行的sql语句,我们可以对保存在sql buffer中的sql 语句进行修改,然后再次执行,sql*plus一般都与数据库打交道。 除了sql*plus语句,在sql*plus中执行的其它语句我们称之为sql*plus命令。它们执行完后,不保存在sql buffer的内存区域中,它们一般用来对输出的结果进行格式化显示,以便于制作报表。 下面就介绍一下一些常用的sql*plus命令: 1. 执行一个SQL脚本文件 SQL>start file_name SQL>@ file_name 我们可以将多条sql语句保存在一个文本文件中,这样当要执行这个文件中的所有的sql语句时,用上面的任一命令即可,这类似于dos中的批处理。 2. 对当前的输入进行编辑 SQL>edit 3. 重新运行上一次运行的sql语句 SQL>/ 4. 将显示的内容输出到指定文件 SQL> SPOOL file_name 在屏幕上的所有内容都包含在该文件中,包括你输入的sql语句。 5. 关闭spool输出 SQL> SPOOL OFF 只有关闭spool输出,才会在输出文件中看到输出的内容。 6.显示一个表的结构 SQL> desc table_name 7. COL命令: 主要格式化列的显示形式。 该命令有许多选项,具体如下: COL[UMN] [{ column|expr} [ option ...]] Option选项可以是如下的子句: ALI[AS] alias CLE[AR] FOLD_A[FTER] FOLD_B[EFORE] FOR[MA T] format

Oracle常用命令(详细介绍导入、导出全部方法)

(经典)感觉很有用. Oracle 创建删除用户、角色、表空间、导入导出、备份命令总结导入导出实用程序用于实施数据库的逻辑备份和恢复 导出实用将数据库中的对象定义和数据备份到一个操作系统二进制文件中 导入使用程序读取二进制导出文件并将对象和数据载入数据库中 导出额导入实用程序的特点有: 1.可以按时间保存表结构和数据 2.允许导出指定的表,并重新导入到新的数据库中 3.可以吧数据库迁移到另外一台异构服务器上 4.在两个不同版本的Oracle数据库之间传输数据 5.在联机状态下进行备份和恢复 6.可以重新组织表的存储结构,减少链接及磁盘碎片 调用导入导出的三种方法: 在命令执行程序的参数和参数值 已交互的方式提示用户逐个输入参数的值 允许用户将运行参数和参数值存储在参数文件中,以便重复使用参数 导入导出数据库对象的四种模式:完全数据库、表、用户、表空间 导入导出整个数据库的所有对象 导入导出一个或多个指定的表或表空间 导入导出一个用户模式中的所有对象 导入导出一个或多个指定的表空间中的所有对象 导出使用程序有以下常用的命令参数 参数说明 USERID 确定执行导出实用程序的用户名和口令 BUFFER 确定导出数据时所使用的缓冲区大小,其大小用字节表示 FILE 指定导出的二进制文件名称,默认的扩展名是.dmp FULL 指定是否以全部数据库方式导出,只有授权用户才可使用此参数OWNER 要导出的数据库用户列表 HELP 指定是否显示帮助消息和参数说明 ROWS 确定是否要导出表中的数据 TABLES 按表方式导出时,指定需导出的表和分区的名称

PARFILE 指定传递给导出实用程序的参数文件名 TABLESPACES 按表空间方式导出时,指定要导出的表空间名 导出实用程序 按用户方式导出数据 exp gmd/gmd@oracle file=d:/1.dmp owner=gmd 按表方式导出数据 exp gmd/gmd@oracle tables=(GRP_PROVINCE,GRP_CITY,GRP_AREA) file=d:/2.dmp 按表空间方式导出数据 exp system/oracle@oracle tablespaces=(gmd) file=d:/3.dmp 使用参数文件导出数据 exp system/oracle@oracle parfile='d:\parameters.txt' 导入使用程序有以下常用的命令参数 参数说明 USERID 指定执行导入的用户名和密码 BUFFER 指定用来读取数据的缓冲区大小,以字节为单位 COMMIT 指定是否在每个数组(其大小由BUFFER参数设置)插入后进行提交 FILE 指定要导入的二进制文件名 FROMUSER 指定要从导出转储文件中导入的用户模式 TOUSER 指定要将对象导入的用户名。FROMUSER与TOUSER可以不同 FULL 指定是否要导入整个导出转储文件 TABLES 指定要导入的表的列表 ROWS 指定是否要导入表中的行 PARFILE 指定传递给导入实用程序的参数文件名,此文件可以包含这里列出的所有参数IGNORE 导入时是否忽略遇到的错误,默认为N TABLESPACES 按表空间方式导入,列出要导入的表空间名 导入实用程序 按整个文件导入数据库 imp gmd/gmd@oracle file=d:1.dmp ignore=y full=y 按halibut用户的表导入到fantasy用户 imp gmd/gmd@oracle file=2.dmp fromuser=halibut touser=fantasy tables=(t_user,role) 使用参数文件导入数据 imp system/oracle@oracle parfile='d:\paramenters.txt'

db2导入导出常用命令

Db2 文件导入导出常见命令总结Db2 的数据迁移,最常用的就是导入导出功能,而导入导出的命令貌似简单,实则内含玄机,千变万化,稍不留神,则错误百出,这儿就工作中常用到的命令,总结了一下,分享给大家!欢迎大家踊跃拍砖!? 当然在这以前,我觉得有必要提及一点关于导入导出基础的知识!DEL:界定的ASCII文件,行分隔符和列分隔符将数据分开。ASC:定长的ASCII文件,行按照行分割符分开,列定长。PC/IXF:只能用来在db2之间导数据,根据类型数字值被打包成十进制或者二进制,字符被保存为ASCII,只保存变量已经使用了的长度,文件中包括表的定义和表的数据。WSF:工作表方式导入导出,这种格式的文件类型用的比较少。Db2中对不同的数据导入导出方式,支持不同的文件类型,这里个人觉得很有必要注意的。文件类型Import export load ------------------------------------------------------- 定界支持支持支持非定界支持不支持支持Ixf 支持支持支持Wsf工作表支持支持不支持 关于3种导入导出操作进行简单的介绍: export:导出数据,支持IXF,DEL或WSF import:导入数据,可以向表中导入数据,支持上面提到的4种文件类型。 load:导入数据,功能和import基本相同。支持以上说的几种文件类型。 关于Export 这个其实比较简单,没啥好说的,一般命令:export to filename of filetype select x from xx where 就ok了,这里需要注意的是: 1. 关于不同字符集的导出MODIFIED BY CODEPAGE= Exprot to filename.del for del MODIFIED BY CODEPAGE=1386 select …from …where …; 这里,在数据从数据库倒出来的时候就会做一个数据库代码页的转换 2.时间字段格式化的MODIFIED BY TIMESTAMPFORMAT="yyyy-mm-dd hh:mm:ss tt" 例:Exprot to filename.del for del MODIFIED BY TIMESTAMPFORMAT="yyyy-mm-dd hh:mm:ss tt" select …from …where …; 关于Import 1.Import模式的介绍 CREATE/INSERT/INSERT_UPDATE/REPLACE/REPLACE_CREATE CREATE :首先创建目标表和它的索引,然后将数据导入到新表中。该选项惟一支持的文件格式是PC/IXF。还可以指定新表所在表空间的名称INSERT :将导入的数据插入表中。目标表必须已经存在。INSERT_UPDATE :将数据插入表中,或者更新表中具有匹配主键的行。目标表必须已经存在,并且定义了一个主键。REPLACE :删除所有已有的数据,并将导入的数据插入到一个已有的目标表中。REPLACE_CREATE :如果目标表已经存在,则导入实用程序删除已有的数据,并插入新的数据,就像REPLACE 选项那样。如果目标表还没有定义,那么首先创建这个表以及它的相关索引,然后再导入数据。正如您可能想像的那样,输入文件必须是PC/IXF 格式的文件,因为那种格式包含对导出表的结构化描述。如果目标表是被一个外键引用的一个父表,那么就不能使用REPLACE_CREATE。 2. 批量提交COMMITCOUNT,保证insert的数据在COMMITCOUNT以后进行一次commit,这对于大数据量的导入文件来说是一个不错的方法,例:Import from filename of del COMMITCOUNT 50000 insert into tabname; 3. 批量插入MODIFIED BY COMPOUND把文件中的COMPOUND 行记录作为一组一起导入,这个操作可以和上边的批量提交一起使用,比较理想。例:Import from filename of del MODIFIED BY COMPOUND =50 insert into tabname; 4. 导入记录限制ROWCOUNT:只导入rowcount 条数据,有时候,业务逻辑需要只导入部分数据,那么ROWCOUNT是一个不错的选择,只是在我的测试中ROWCOUNT一直没有起过作用,呵呵,谁熟悉这里,帮我完善下。例:Import from filename of del ROWCOUNT 10000

Oracle 数据库 常用命令

SPOOL将屏幕所有的输出输出到指定文件 -- spool 文件路径名; spool g:\mysql.sql; --业务操作 --结束输出 spool off; 执行一个SQL脚本文件 我们可以将多条sql语句保存在一个文本文件中,这样当要执行这个文件中的所有的sql语句时,用上面的任一命令即可,这类似于dos中的批处理。 --start file_name -- @ file_name start g:\mysql.sql; @ g:\mysql.sql; 对当前的输入进行编辑 edit ed 重新运行上一次运行的sql语句 / 显示一个表的结构 desc table_name ; 清屏 clear screen; 退出 exit; 置当前session是否对修改的数据进行自动提交 --SET AUTO[COMMIT] {ON|OFF|IMM[EDIATE]| n} set autocommit on; 在用start命令执行一个sql脚本时,是否显示脚本中正在执行的SQL语句 -- SET ECHO {ON|OFF}; set echo on; 是否显示当前sql语句查询或修改的行数 --SET FEED[BACK] {6|n|ON|OFF}

-- 默认只有结果大于6行时才显示结果的行数。如果set feedback 1 ,则不管查询到多少行都返回。当为off 时,一律不显示查询的行数 set feedback 1; 是否显示列标题 --当set heading off 时,在每页的上面不显示列标题,而是以空白行代替 --SET HEA[DING] {ON|OFF} set heading on; 设置一行可以容纳的字符数 -- 如果一行的输出内容大于设置的一行可容纳的字符数,则折行显示 --SET LIN[ESIZE] {80|n} set linesize 100; 设置页与页之间的分隔 -- SET NEWP[AGE] {1|n|NONE} --当set newpage 0 时,会在每页的开头有一个小的黑方框。 --当set newpage n 时,会在页和页之间隔着n个空行。 --当set newpage none 时,会在页和页之间没有任何间隔 set newpage 1; 设置一页有多少行数 --如果设为0,则所有的输出内容为一页并且不显示列标题 --SET PAGES[IZE] {24|n} set pagesize 20; 是否显示用DBMS_OUTPUT.PUT_LINE包进行输出的信息。 --SET SERVEROUT[PUT] {ON|OFF} set serveroutput on; 是否在屏幕上显示输出的内容,主要用与SPOOL结合使用。 --在用spool命令将一个大表中的内容输出到一个文件中时,将内容输出在屏幕上会耗费大量的时间,--设置set termspool off后,则输出的内容只会保存在输出文件中,不会显示在屏幕上,极大的提高了spool的速度 --SET TERM[OUT] {ON|OFF} set termout off; 在dos里连接oracle数据库 CONNECT user_name/passwd@l_jiayou

DB数据库导入导出

D B数据库导入导出 Revised final draft November 26, 2020

D B2数据导入导出 2012年3月12日 编辑:徐彦 一、环境 操作系统:RedhatLinuxAS5.5 (-128.el5PAE#1SMPi686i386GNU/Linux) 数据库版本:DB2WorkGroup版V9.7.0 (数据库版本可通过连接数据库来查看,db2connecttodbname) 二、声明 实例用户,默认为db2inst1 Das用户,默认为dasusr1 数据库安装目录($INSTHOME),默认为/opt/ibm/db2/V9.7 实例安装目录($HOME),默认为/home/db2inst1/ 实例名:db2inst1 数据库名: 三、导出具体步骤 3.1导出对象结构 建议单独创建一个数据导出目录,利于导出文件整理的清晰。 $su–db2inst1 #切换至db2inst1用户 $cd/ #为导出目录,例如/home/db2inst1/dbdmp(db2inst1要有相应的读写权限) $db2connectto #连接至数据库 $db2look–d-e–a–l–o.sql #导出数据库对象创建脚本 例子: 数据库名为meibof 3.2导出数据库数据 (建议在目录下另建db2move的目录用来存放导出数据,因为db2move命令会产生若干文件) db2moveexport

(如果导出是发现有warning,在上面的命名后面加上-aw参数) 以数据库名为meibof为例: 四、导入具体步骤 4.1建立新数据库 $su–db2inst1 #切换至db2inst1用户 db2createdb(建议使用db2cc工具来进行创建数据库) 创建名为meibof的数据库: 4.2执行.sql脚本创建数据库 切换到放置.sql的目录 db2–tvf.sql (单次导入有可能丢失数据结构,建议连续执行3次,导入完成后,和开发人员确认数据库对象的数量,尤其是存储过程。) 4.3导入数据 切换到放置db2move导出数据的目录 db2moveload 4.4一致性检查 原理:如果发现有表存在检查挂起状态(由于检查约束的原因),则输入命令如下 db2setintegrityforschema.tablenameimmediatechecked将其转换成正常状态。 首先利用sql语句得到要检查的表的执行语句 主要命令: db2"select'db2setintegrityfor.'||TABNAME||'immediatechecked'fromsyscat.tableswhereTABSCHEMA=''an dSTATUS='C'" 以数据库名meibof,SCHEMA名meibof为例: 查出有14张表需要转换成正常状态。 在上一条语句末加上>filename.sh把要添加的sql语句添加到脚本文件 如下例: 用vi文本编辑器打开脚本文件: 1)在第一行加入连接数据库sql语句; 2)在最后一行加入commit命令,db2commit 执行完后再次检查发现没有需要更正的: 说明:如果还有需要更正的表,则反复执行上述操作。

oracle数据库导入导出命令

Oracle数据导入导出imp/exp 功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份。 大多情况都可以用Oracle数据导入导出完成数据的备份和还原(不会造成数据的丢失)。 Oracle有个好处,虽然你的电脑不是服务器,但是你装了oracle客户端,并建立了连接 (通过Net Configuration Assistant添加正确的服务命名,其实你可以想成是客户端与服务器端修了条路,然后数据就可以被拉过来了) 这样你可以把数据导出到本地,虽然可能服务器离你很远。 你同样可以把dmp文件从本地导入到远处的数据库服务器中。 利用这个功能你可以构建俩个相同的数据库,一个用来测试,一个用来正式使用。 执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行, DOS中可以执行时由于在oracle 8i 中安装目录\$ora10g\BIN被设置为全局路径, 该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。 oracle用java编写,我想SQLPLUS.EXE、EXP.EXE、IMP.EXE这俩个文件是被包装后的类文件。 SQLPLUS.EXE调用EXP.EXE、IMP.EXE他们所包裹的类,完成导入导出功能。 下面介绍的是导入导出的实例,向导入导出看实例基本上就可以完成,因为导入导出很简单。 数据导出: 1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp 中 exp system/manager@TEST file=d:\daochu.dmp full=y 2 将数据库中system用户与sys用户的表导出 exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys) 3 将数据库中的表table1 、table2导出 exp system/manager@TEST file=d:\daochu.dmp tables=(table1,table2) 4 将数据库中的表table1中的字段filed1以"00"打头的数据导出 exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\" 上面是常用的导出,对于压缩我不太在意,用winzip把dmp文件可以很好的压缩。 不过在上面命令后面加上 compress=y 就可以了 数据的导入 1 将D:\daochu.dmp 中的数据导入 TEST数据库中。 imp system/manager@TEST file=d:\daochu.dmp 上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。

数据库导入导出命令

MySQL: 1.导出整个数据库 mysqldump -u 用户名-p 数据库名>导出的文件名 mysqldump -u wcnc -p smgp_apps_wcnc>wcnc.sql 2.导出一个表 mysqldump -u 用户名-p 数据库名表名>导出文件的路径和名称 mysqldump -u wcnc -p smgp_apps_wcnc users>wcnc_users.sql 3.导出一个数据库结构 mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc>d:wcnc_db.sql -d 没有数据--add-drop-table 在每个create语句之前增加一个drop table 4.导入数据库 常用source 命令 进入mysql数据库控制台, 如mysql -u root -p mysql>use 数据库 然后使用source命令,后面参数为脚本文件(如这里用到的.sql) mysql>source d:wcnc_db.sql(注:如果写成source d:\wcnc_db.sql,就会报语法错误)Oracle: Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用。执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,DOS中可以执行时由于在oracle 8i 中安装目录ora81BIN被设置为全局路径,该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。 oracle用java编写,SQLPLUS.EXE、EXP.EXE、IMP.EXE这两个文件有可能是被包装后的类文件。SQLPLUS.EXE调用EXP.EXE、IMP.EXE所包裹的类,完成导入导出功能。 下面介绍的是导入导出的实例。 数据导出: 1 将数据库GAKJ完全导出,用户名system 密码GAKJ_2280导出到D:DA TA.dmp中 exp system/GAKJ_2280@GAKJ file=d:DATA.dmp full=y 2 将数据库中system用户与sys用户的表导出 exp system/GAKJ_2280@GAKJ file=d:DATA.dmp owner=(system,sys) 3 将数据库中的表USER USER_CONFIG导出 expMICROGPSDBA/MICROGPSDBA@GAKJ file= d:\TABLE.dmp tables=(USER USER_CONFIG) 4 将数据库中的表USER中的字段filed1以"00"打头的数据导出 exp system/GAKJ_2280@GAKJ file=d:\DATA.dmp tables=(USER) query=" where filed1 like '00%'" 数据的导入 1 将D:DATA.dmp 中的数据导入GAKJ数据库中。

加注释的oracle命令大全

ORACLE的启动和关闭 1、在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下su - oracle a、启动ORACLE系统 oracle>svrmgrl SVRMGR>connect internal SVRMGR>startup SVRMGR>quit b、关闭ORACLE系统 oracle>svrmgrl SVRMGR>connect internal SVRMGR>shutdown SVRMGR>quit 启动oracle9i数据库命令: $ sqlplus /nolog SQL*Plus: Release 9.2.0.1.0 - Production on Fri Oct 31 13:53:53 2003 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. SQL> connect / as sysdba Connected to an idle instance. SQL> startup^C SQL> startup ORACLE instance started. 2、在双机环境下 要想启动或关闭ORACLE系统必须首先切换到root用户,如下 su -root a、启动ORACLE系统 hareg -y oracle b、关闭ORACLE系统 hareg -n oracle Oracle数据库有哪几种启动方式

说明: 有以下几种启动方式: 1、startup nomount 非安装启动,这种方式启动下可执行:重建控制文件、重建数据库 读取init.ora文件,启动instance,即启动SGA和后台进程,这种启动只需要init.ora文件。 2、startup mount dbname 安装启动,这种方式启动下可执行: 数据库日志归档、 数据库介质恢复、 使数据文件联机或脱机, 重新定位数据文件、重做日志文件。 执行“nomount”,然后打开控制文件,确认数据文件和联机日志文件的位置, 但此时不对数据文件和日志文件进行校验检查。 3、startup open dbname 先执行“nomount”,然后执行“mount”,再打开包括Redo log文件在内的所有数据库文件,这种方式下可访问数据库中的数据。 4、startup,等于以下三个命令 startup nomount alter database mount alter database open 5、startup restrict 约束方式启动 这种方式能够启动数据库,但只允许具有一定特权的用户访问 非特权用户访问时,会出现以下提示: ERROR: ORA-01035: ORACLE 只允许具有RESTRICTED SESSION 权限的用户使用 6、startup force 强制启动方式 当不能关闭数据库时,可以用startup force来完成数据库的关闭 先关闭数据库,再执行正常启动数据库命令

oracle命令大全

SQL*PLUS命令的使用大全[zt] Oracle的sql*plus是与oracle进行交互的客户端工具。在sql*plus中,可以运行sql*plus命令与sql*plus语句。 我们通常所说的DML、DDL、DCL语句都是sql*plus语句,它们执行完后,都可以保存在一个被称为sql buffer的内存区域中,并且只能保存一条最近执行的sql语句,我们可以对保存在sql buffer中的sql 语句进行修改,然后再次执行,sql*plus一般都与数据库打交道。 除了sql*plus语句,在sql*plus中执行的其它语句我们称之为sql*plus命令。它们执行完后,不保存在sql buffer的内存区域中,它们一般用来对输出的结果进行格式化显示,以便于制作报表。 下面就介绍一下一些常用的sql*plus命令: 1. 执行一个SQL脚本文件 SQL>start file_name SQL>@ file_name 我们可以将多条sql语句保存在一个文本文件中,这样当要执行这个文件中的所有的sql语句时,用上面的任一命令即可,这类似于dos中的批处理。 2. 对当前的输入进行编辑 SQL>edit 3. 重新运行上一次运行的sql语句 SQL>/ 4. 将显示的内容输出到指定文件 SQL> SPOOL file_name 在屏幕上的所有内容都包含在该文件中,包括你输入的sql语句。 5. 关闭spool输出 SQL> SPOOL OFF 只有关闭spool输出,才会在输出文件中看到输出的内容。 6.显示一个表的结构 SQL> desc table_name 7. COL命令: 主要格式化列的显示形式。 该命令有许多选项,具体如下: COL[UMN] [{ column|expr} [ option ...]] Option选项可以是如下的子句: ALI[AS] alias CLE[AR] FOLD_A[FTER] FOLD_B[EFORE]

常用CAE软件导入导出文件格式汇总

一、Nastran:Patran的导入文件格式 Nastran的导入文件格式

二、Abaqus:Abaqus的导入文件格式 三、Fluent:Fluent的导入文件格式

Fluent的导出文件格式 四、Ansys:Ansys的导入文件格式

Hypermesh cdb 附:四种CAE软件格式说明 1.Nastran 以为前后处理软件。通过可以和多种CAD和CAE软件相联接。几何模型(一维、二维、和三维模型)可以调入CAD的模型,也可以在里直接建立。 在Patran和Nastran运行时,会生成许多文件,主要包括.db、.、.bdf、.op2、.xdb、.f04、.f06、.**、.jou,还有一些中间临时文件,在运行结束时会被自动删除,下面就这些主要文件作

简要说明。 1).db文件是的数据库文件,用于保存各种几何信息和有限元模型 的信息,它是中最基本的文件。.文件是.db文件的本分文件2).bdf文件是由生成的、供读取的文件,其中保存着在中所建立的 有限元模型的所有信息,就是根据.dbf文件来进行运算 的。.bdf文件可以用诸如vi和notepad等文本编辑其打开。 3).op2文件和.xdb文件是计算结果输出文件,由来读取并进行后置 处理。根据.op2或.xdb文件的内容以图形、动画等形式将结 果显示出来。选用.op2还是.xdb作为的输出文件,可以在中 进行控制。 4).f04文件是系统信息统计文件,可以用文本编辑器打开,其记录 了本次分析中的系统信息,比如占用系统内存、硬盘、CPU 时间情况,以及创建了哪些文件,每项工作的时间等情况。 5).f06文件是分析运算过程记录文件,其中记录了许多非常有用信 息:有限元单元的各种信息,包括单元类型、节点坐标、载 荷情况、约束情况;计算结果信息,包括最大应力、最大位 移等;警告、出错信息,警告和出错信息都以错误号(数字) 的形式给出,用户可以查阅MSC的用户手册,从而找出出现 错误的原因,加以改正。.**文件是对话文件,其记录了本次 从Patran打开到退出期间所有的对话过程,"**"表示两位数 字,由系统自动赋予。

oracle命令大全

1.create user username identified by password;//建用户名和密码oracle ,oracle 2.grant connect,resource,dba to username;//授权 grant connect,resource,dba,sysdba to username; 3.connect username/password//进入。 4.select table_name,column_name from user_tab_columns where table_name='mview_log';//查询表中的表名,字段名等等。 5. 如何执行脚本SQL文件? SQL>@PATH/filename.sql; 6.Oracle oledb 提供者在command中执行多条SQL语句与SQL SERVER有少许差别,SQL Server 只需使用";"分割多条SQL语句,而Oracle需要遵守ORACLE调用规范,即除分号分割外,还需以begin /end;包围语句体. 使用C#描述应如下所示: https://www.360docs.net/doc/de10849721.html,mandText = "begin INSERT INTO GROUP_INFO (GROUP_ID, GROUP_NAME) VALUES (1, \'2\'); INSERT INTO GROUP_INFO(GROUP_ID, GROUP_NAME) VALUES (2, \'2\'); end;"; 7.查询用户下的所有表 select distinct table_name from user_tab_columns; 8.如何搜索出前N条记录?Select a.*,rownum from (select * from cardkind order by cardkind ) a where rownum show user 3、查看系统拥有哪些用户 SQL> select * from all_users; 4、新建用户并授权 SQL> create user a identified by a;(默认建在SYSTEM表空间下) SQL> grant connect,resource to a; 5、连接到新用户 SQL> conn a/a 6、查询当前用户下所有对象 SQL> select * from tab; 7、建立第一个表 SQL> create table a(a number); 8、查询表结构 SQL> desc a 9、插入新记录 SQL> insert into a values(1); 10、查询记录 SQL> select * from a;

相关文档
最新文档