oracle表的导入导出命令.docx
- 文档编号:7518668
- 上传时间:2023-01-24
- 格式:DOCX
- 页数:14
- 大小:20.24KB
oracle表的导入导出命令.docx
《oracle表的导入导出命令.docx》由会员分享,可在线阅读,更多相关《oracle表的导入导出命令.docx(14页珍藏版)》请在冰豆网上搜索。
oracle表的导入导出命令
oracle表的导入导出-命令.txt12思念是一首诗,让你在普通的日子里读出韵律来;思念是一阵雨,让你在枯燥的日子里湿润起来;思念是一片阳光,让你的阴郁的日子里明朗起来。
数据导出:
1将数据库TEST完全导出,用户名system密码manager导出到D:
daochu.dmp中
expsystem/manager@TESTfile=d:
daochu.dmpfull=y
2将数据库中system用户与sys用户的表导出
expsystem/manager@TESTfile=d:
daochu.dmpowner=(system,sys)
3将数据库中的表inner_notify、notify_staff_relat导出
expaichannel/aichannel@TESTDB2file=d:
datanewsmgnt.dmptables=(inner_notify,notify_staff_relat)
4将数据库中的表table1中的字段filed1以"00"打头的数据导出
expsystem/manager@TESTfile=d:
daochu.dmptables=(table1)query="wherefiled1like'00%'"
上面是常用的导出,对于压缩,既用winzip把dmp文件可以很好的压缩。
也可以在上面命令后面加上compress=y来实现。
数据的导入
1将D:
daochu.dmp中的数据导入TEST数据库中。
impsystem/manager@TESTfile=d:
daochu.dmp
impaichannel/aichannel@HUSTfull=yfile=file=d:
datanewsmgnt.dmpignore=y
上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。
在后面加上ignore=y就可以了。
2将d:
daochu.dmp中的表table1导入
impsystem/manager@TESTfile=d:
daochu.dmptables=(table1)
基本上上面的导入导出够用了。
不少情况要先是将表彻底删除,然后导入。
注意:
操作者要有足够的权限,权限不够它会提示。
数据库时可以连上的。
可以用tnspingTEST来获得数据库TEST能否连上。
附录一:
给用户增加导入数据权限的操作
第一,启动sql*puls
第二,以system/manager登陆
第三,createuser用户名IDENTIFIEDBY密码(如果已经创建过用户,这步可以省略)
第四,GRANTCREATEUSER,DROPUSER,ALTERUSER,CREATEANYVIEW,
DROPANYVIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,
DBA,CONNECT,RESOURCE,CREATESESSIONTO用户名字
第五,运行-cmd-进入dmp文件所在的目录,
impuserid=system/managerfull=yfile=*.dmp
或者impuserid=system/managerfull=yfile=filename.dmp
执行示例:
F:
WorkOracle_Databackup>impuserid=test/testfull=yfile=inner_notify.dmp
屏幕显示
Import:
Release8.1.7.0.0-Productionon星期四2月1616:
50:
052006
(c)Copyright2000OracleCorporation.Allrightsreserved.
连接到:
Oracle8iEnterpriseEditionRelease8.1.7.0.0-Production
WiththePartitioningoption
JServerRelease8.1.7.0.0-Production
经由常规路径导出由EXPORT:
V08.01.07创建的文件
已经完成ZHS16GBK字符集和ZHS16GBKNCHAR字符集中的导入
导出服务器使用UTF8NCHAR字符集(可能的ncharset转换)
.正在将AICHANNEL的对象导入到AICHANNEL
..正在导入表"INNER_NOTIFY"4行被导入
准备启用约束条件...
成功终止导入,但出现警告。
附录二:
Oracle不允许直接改变表的拥有者,利用Export/Import可以达到这一目的.
先建立import9.par,
然后,使用时命令如下:
impparfile=/filepath/import9.par
例import9.par内容如下:
FROMUSER=TGPMS
TOUSER=TGPMS2(注:
把表的拥有者由FROMUSER改为TOUSER,FROMUSER和TOUSER的用户可以不同)
ROWS=Y
INDEXES=Y
GRANTS=Y
CONSTRAINTS=Y
BUFFER=409600
file==/backup/ctgpc_20030623.dmp
**************************************************************************************************************************************
常用命令
1.创建表空间
createtablespace表空间名
default‘filename’/path’服务器端路径’[sizeinteger[k|m]][autoextend[off|on]];
size:
制定文件的大小,autoextend:
用来启动或禁用数据文件的自动扩展。
2.创建新用户
createuser用户名
identifiedby密码
[defaulttablespace表空间]
[temporarytablespace临时表空间];
3.为用户授权
grant权限to用户
grant权限on表名to用户
4.修改用户密码
alteruser用户名
identifiedby密码;
5.删除用户
dropuser用户名casaed;
6.查看当前用户
showuser
7.查看当前时间
selectsysdatefromdual;
8.查看当前用户下的所有表
selecttable_namefromuser_tables;
9.查看当前表的结构
desc表名
10.修改上一条的内容
edit;
Oracle数据库对象
1.同义词
a.创建同义词
私有同义词
create[orreplace]synonym同义词名for对象名;
共有同义词
create[orreplace]publicsynonym同义词名for对象名;
b.删除同义词
dropsynonym同义词名;
2.序列
a.创建序列
createsequence序列名
[startwithinteger]
[incrementbyinteger]
[maxvalueinteger|nomaxvalue]
[minvalueinteger|nominvalue]
[cycle|nocycle]
[cacheinteger|nocache];
b.访问序列
select序列名.nextvalfromdual;
select序列名.currvalfromdual;
c.根改序列
altersequence序列名
[incrementbyinteger]
[maxvalueinteger|nomaxvalue]
[minvalueinteger|nominvalue]
[cycle|nocycle]
[cacheinteger|nocache];
d.删除序列
dropsequence序列名;
Oracle数据表管理
(一)
1.创建表
createtable表名
(字段名1类型,
字段名2类型…);
2.修改表命令
更改现有列
altertable表名modify(columndefinition….);
向表中添加新列
altertable表名add(columndefinition….);
删除表中现有的列
altertable表名dropcolumn列名;
3.删除表中的记录而不删除表结构
truncatetable表名;
4.删除与表的所有内容
droptable表名cascade;
5.数据操作语言(DML)
SELECT
Select*|{[distinct]字段名|表达式[列别名],…}
From表明
[where条件]
[orderby字段名];
distinct:
限制只返回不同的列
CTAS
Createtable新表名asselect字段名from旧表名;
//拷贝旧表的结构和记录,不拷贝约束
INSERT
Insertinto表名[(字段名)]values(值);
IIS
Insertinto表名1(字段名1)select字段名2from表名2;
//表结构已存在,从另一个表中复制记录
UPDATE
Update表名
Set字段名=新值
[where条件];
DELETE
Delete表名
[where条件];
6.事务控制语言
COMMIT
Commit;//提交
SAVEPOINT
Savepoint保存点;
ROLLBACK
RollbackorRollbackwork;
7.数据控制语言
GRANT
grant权限on表名to用户;
REVOKE
Revoke权限on表名from用户;
8.集合操作符
UNION:
合并查询结果,并删除重复的行
Select字段名1from表名1
Union
Select字段名2from表名2;
UNIONALL:
合并查询结果,并包括重复的行
Select字段名1from表名1
Unionall
Select字段名2from表名2;
INTERSECT:
返回两个查询都有的行
Select字段名1from表名1
Intersect
Select字段名2from表名2;
MINUS:
返回第一个查询有而第二个查询中没有的行
Select字段名1from表名1
Minus
Select字段名2from表名2;
Oracle数据表管理
(二)
9.锁和表分区
A.锁
行级锁
select…forupdate[of字段][waitn|nowait];
waitn:
等待的秒数
表级锁
lock表名in锁定模式mode[nowait]
表级锁的模式:
行共享(rowshare,rs)
行排他(rowexclusive,rx)
共享(share,s)
共享行排他(sharerowexclusive,srx)
排他(exclusive,x)
B.表分区
范围分区
partitionbyrange(column_name)
(
partition分区名1valuelessthen(分区的边界值)[tablespace表空间1],
partition分区名2valuelessthen(分区的边界值)[tablespace表空间2]
);
散列分区
partitionbyhash(column_name)
partitions散列分区的数目[storein(分区使用的表空间)];
or
partitionbyhash(column_name)
(
partition分区名1[tablespace表空间1],
partition分区名1[tablespace表空间1]
);
复合分区
partitionbyrange(column_name1)
subpartitionbyhash(column_name2)
subpartitions散列分区的数目[storein(分区使用的表空间)];
(
partition分区名1valuelessthen(分区的边界值),
partition分区名2valuelessthen(分区的边界值),
partition分区名Nvaluelessthen(maxvalue)
);
列表分区
partitionbylist(column_name)
(
partition分区名1values(分区键值的列表1),
partition分区名2values(分区键值的列表2),
partition分区名Nvalues(default)
);
default:
允许存储前面的分区不能存储的记录
10.分区维护操作
添加分区
altertable表名addpartition分区名valueslessthen(分区的边界值);
删除分区
altertable表名droppartition分区名;
截断分区
altertable表名truncatepartition分区名;
合并分区
altertable表名mergepartitions分区名1,分区名2into分区名;
拆分分区
altertable表名splitpartition分区名at(value)into(partition分区名1,partition分区名2);
分区重命名
altertable表名renamepartition旧分区名to新分区名;
11.视图
a.创建视图
create[orreplace][force|noforce]view视图名[列别名]
asselect字段名from表名
[withcheckoption[constraint约束名]]
[withreadonly];
withcheckoption:
指定只能插入或更新视图可以访问的行,
withreadonly:
确保不能在此视图上执行任何修改操作。
b.创建带有错误的视图
create[orreplace]forceview视图名[列别名]
asselect字段名from表名
[withcheckoption[constraint约束名]]
[withreadonly];
withcheckoption:
指定只能插入或更新视图可以访问的行,
withreadonly:
确保不能在此视图上执行任何修改操作。
C.删除视图
dropview视图名;
12.索引
A.普通索引
createindex索引名on表名(字段名)[tablespace表空间];
B.唯一索引
createuniqeindex索引名on表名(字段名);
C.组合索引
createindex索引名on表名(字段名1,字段名2);
D.反向键索引
createindex索引名on表名(字段名)revser;
E.位图索引
createbitmapindex索引名on表名(字段名);
F.索引组织表
createtabletable_name(字段名类型约束)organizationindex;
G.索引中的分区
a.局部分区索引
createindex索引名on表名(字段名)local;
b.全局分区索引
createindex索引名on表名(字段名)global;
c.全局非分区索引
createindex索引名on表名(字段名);
------------------------------------------------------------------------------------------------------------
规则表---〉分区表
索引组织表
簇
修改列名
altertable表明renamecolumnrename老列名to新列名
添加字段
altertable表名add(字段名类型);
删除字段
altertable表名dropcolumn字段名
修改列属性
altertable表名modify(字段名新属性)
设置某一个字段为无用状态
altertable表名setunuesedcolumn字段名
删除无用字段
alerttable表名dropunusedcloumns
添加主键
alerttable表名addconstraintpkKeyprimarykey(字段列表)
表分区
oracle允许用户对标进一步的规划,即对标进一步的拆分,将表分成若干个逻辑部分,
每个部分成其为标的分区
表分区的优点
增强可用性。
单个分区出现故障不会影响到其它分区
均衡IO。
不同的分区可以影射到不同的磁盘中
改善性能
范围分区法
这种分区方法是根据表中的列值的范围对标进行分区
分区时,首先依据列中得值的可能的范围进行划分
例:
createtablestudent
(
studentIdintegernotnull,
studentNamevarchar2(20),
scroeinteger
)
partitionbyrang(Score)
(
partitionp1valueslessthan(60),
partitionp2valueslessthan(70),
partitionp3valueslessthan(80),
partitionp4valueslessthan(maxvalue),
);
散列分区
散列分区法提供了一种通过制定分区编号来均匀地分布数据的方法
他通过hash函数间数据映射到相应的分区上
它使得数据均匀的分配到各分区上,各分区大小趋向一致
例:
createtabledepartment
(
depnointegernotnull,
depnamevarchar2(20),
)
partitionbyhash(depno)
(
partitionp1,
partitionp2,
);
复合分区
复合分区是先对数据进行范围分区,然后在每个字分区理由进行散列分区的一种分区方法
例:
createtablesalgrade
(gradenumber,losalnumberhisalnumber,hisalnumber)
partitionbyrang(grade)
subpartitionbyhash(losal,hisal)(
partitionp1valuelessthan(10),
(subpartitionsp1,subpartitionsp2),
partitionp1valuelessthan(20),
(subpartitionsp3,subpartitionsp4),
)
列表分区
列表分区允许用户明确的控制行到分区的映射
不同的范围分区或列分区,他运许按自然的方式对无序和不相干的数据集进行分组的组织
例如:
partitionbylist(字段)
(
partition列名称values(值列表),
partition列名称values(值列表),
。
。
。
。
。
。
partition列名称values(值列表)
)
指定的分区中查询
select*fromtableNamepartition(p1)
表分区的维护
移动,添加,删除,结合,截断,拆分,合并,交换
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- oracle 导入 导出 命令