oracle10g如何导出dmp,Oracle 10g dmp文件的导入导出
Oracle數(shù)據(jù)導(dǎo)入dmp文件可以是“某個(gè)用戶(hù)下的數(shù)據(jù)庫(kù)”,也可以是“某張表”,這里以導(dǎo)入數(shù)據(jù)庫(kù)為例說(shuō)明 :
1.用SYS用戶(hù)名,以DBA的身份在ie中登入到數(shù)據(jù)庫(kù)(ORACLE客戶(hù)端Enterprise Manager Console)
2.在方案->用戶(hù)與權(quán)限->用戶(hù)
新建用戶(hù)
同時(shí)給該用戶(hù)授予“角色”:
CONNECT,DBA,EXP_FULL_DATABASE,IMP_FULL_DATABASE,RESOURCE
授予系統(tǒng)權(quán)限:
ALTER USER,COMMENT ANY TABLE,CREATE ANY VIEW,CREATESESSION,
CREATE USER,DELETE ANY TABLE,DROP ANY VIEW,DROP USER,
UNLIMITED TABLESPACE
3.在命令行下執(zhí)行:(一定完全按照以下步驟)
$imp 用戶(hù)名/口令? 回車(chē)
填寫(xiě)導(dǎo)入文件路徑:EXPDAT.DMP>c:\a.dmp
輸入插入緩沖區(qū)大小:默認(rèn)不填 回車(chē)
只列出導(dǎo)入文件的內(nèi)容:?? 回車(chē)
忽略創(chuàng)建錯(cuò)誤:yes
導(dǎo)入權(quán)限:yes
導(dǎo)入表數(shù)據(jù):yes
導(dǎo)入整個(gè)導(dǎo)出文件:yes
等待……
成功終止導(dǎo)入,但出現(xiàn)警告。
例如:
4.打開(kāi)PLSQL? Developer,用新建的用戶(hù)名和口令,以normal身份登錄
5.在tables中可以查看導(dǎo)入到表
6.到此結(jié)束(這個(gè)問(wèn)題折騰了一上午)
導(dǎo)出:
exp username/password@服務(wù)名 file=文件路徑及文件名
服務(wù)器名的獲取:
1、 先登錄conn 用戶(hù)名/密碼
2、 執(zhí)行下列sql命令:select name from v$database
例:我的數(shù)據(jù)庫(kù)pcms的用戶(hù)名和密碼都是mmis,服務(wù)名為pcms 我要導(dǎo)出到D盤(pán)下的pcms.dmp文件,可以這樣寫(xiě):
exp mmis/mmis@pcms file=d:\pcms.dmp
SQL> $exp 用戶(hù)名/密碼@服務(wù)名 file=路徑+文件名
如下圖所示:
大家知道Colb嗎?
CLOB定義
數(shù)據(jù)庫(kù)中的一種保存文件所使用的類(lèi)型。
Character Large Object
SQL 類(lèi)型 CLOB 在 JavaTM 編程語(yǔ)言中的映射關(guān)系。SQL CLOB 是內(nèi)置類(lèi)型,它將字符大對(duì)象 (Character Large Object) 存儲(chǔ)為數(shù)據(jù)庫(kù)表某一行中的一個(gè)列值。默認(rèn)情況下,驅(qū)動(dòng)程序使用 SQL locator(CLOB) 實(shí)現(xiàn) Clob 對(duì)象,這意味著 CLOB 對(duì)象包含一個(gè)指向 SQL CLOB 數(shù)據(jù)的邏輯指針而不是數(shù)據(jù)本身。Clob 對(duì)象在它被創(chuàng)建的事務(wù)處理期間有效。
在一些數(shù)據(jù)庫(kù)系統(tǒng)里,也使用Text 作為CLOB的別名,比如SQL Server
CLOB和BLOB的區(qū)別
CLOB使用CHAR來(lái)保存數(shù)據(jù)。 如:保存XML文檔。
BLOB就是使用二進(jìn)制保存數(shù)據(jù)。 如:保存位圖。
JAVA里面對(duì)CLOB的操作
在絕大多數(shù)情況下,使用2種方法使用CLOB
1 相對(duì)比較小的,可以用String進(jìn)行直接操作,把CLOB看成字符串類(lèi)型即可
2 如果比較大,可以用 getAsciiStream 或者 getUnicodeStream 以及對(duì)應(yīng)的 setAsciiStream 和 setUnicodeStream 即可
讀取數(shù)據(jù)
ResultSet rs = stmt.executeQuery("SELECT TOP 1 * FROM Test1");
rs.next();
Reader reader = rs.getCharacterStream(2);
插入數(shù)據(jù)
PreparedStatement pstmt = con.prepareStatement("INSERT INTO test1 (c1_id, c2_vcmax) VALUES (?, ?)");
pstmt.setInt(1, 1);
pstmt.setString(2, htmlStr);
pstmt.executeUpdate();
更新數(shù)據(jù)
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM test1");
rs.next();
Clob clob = rs.getClob(2);
long pos = clob.position("dog", 1);
clob.setString(1, "cat", len, 3);
rs.updateClob(2, clob);
rs.updateRow();
Ok,教程就到這里了,這也是今天額收獲。
總結(jié)
以上是生活随笔為你收集整理的oracle10g如何导出dmp,Oracle 10g dmp文件的导入导出的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: java的super_Java中this
- 下一篇: bvp解算器是什么_对数小史,以及为什么