oracle10g如何导出dmp,Oracle 10g dmp文件的导入导出
Oracle數(shù)據(jù)導(dǎo)入dmp文件可以是“某個用戶下的數(shù)據(jù)庫”,也可以是“某張表”,這里以導(dǎo)入數(shù)據(jù)庫為例說明 :
1.用SYS用戶名,以DBA的身份在ie中登入到數(shù)據(jù)庫(ORACLE客戶端Enterprise Manager Console)
2.在方案->用戶與權(quán)限->用戶
新建用戶
同時給該用戶授予“角色”:
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 用戶名/口令? 回車
填寫導(dǎo)入文件路徑:EXPDAT.DMP>c:\a.dmp
輸入插入緩沖區(qū)大小:默認(rèn)不填 回車
只列出導(dǎo)入文件的內(nèi)容:?? 回車
忽略創(chuàng)建錯誤:yes
導(dǎo)入權(quán)限:yes
導(dǎo)入表數(shù)據(jù):yes
導(dǎo)入整個導(dǎo)出文件:yes
等待……
成功終止導(dǎo)入,但出現(xiàn)警告。
例如:
4.打開PLSQL? Developer,用新建的用戶名和口令,以normal身份登錄
5.在tables中可以查看導(dǎo)入到表
6.到此結(jié)束(這個問題折騰了一上午)
導(dǎo)出:
exp username/password@服務(wù)名 file=文件路徑及文件名
服務(wù)器名的獲取:
1、 先登錄conn 用戶名/密碼
2、 執(zhí)行下列sql命令:select name from v$database
例:我的數(shù)據(jù)庫pcms的用戶名和密碼都是mmis,服務(wù)名為pcms 我要導(dǎo)出到D盤下的pcms.dmp文件,可以這樣寫:
exp mmis/mmis@pcms file=d:\pcms.dmp
SQL> $exp 用戶名/密碼@服務(wù)名 file=路徑+文件名
如下圖所示:
大家知道Colb嗎?
CLOB定義
數(shù)據(jù)庫中的一種保存文件所使用的類型。
Character Large Object
SQL 類型 CLOB 在 JavaTM 編程語言中的映射關(guān)系。SQL CLOB 是內(nèi)置類型,它將字符大對象 (Character Large Object) 存儲為數(shù)據(jù)庫表某一行中的一個列值。默認(rèn)情況下,驅(qū)動程序使用 SQL locator(CLOB) 實現(xiàn) Clob 對象,這意味著 CLOB 對象包含一個指向 SQL CLOB 數(shù)據(jù)的邏輯指針而不是數(shù)據(jù)本身。Clob 對象在它被創(chuàng)建的事務(wù)處理期間有效。
在一些數(shù)據(jù)庫系統(tǒng)里,也使用Text 作為CLOB的別名,比如SQL Server
CLOB和BLOB的區(qū)別
CLOB使用CHAR來保存數(shù)據(jù)。 如:保存XML文檔。
BLOB就是使用二進(jìn)制保存數(shù)據(jù)。 如:保存位圖。
JAVA里面對CLOB的操作
在絕大多數(shù)情況下,使用2種方法使用CLOB
1 相對比較小的,可以用String進(jìn)行直接操作,把CLOB看成字符串類型即可
2 如果比較大,可以用 getAsciiStream 或者 getUnicodeStream 以及對應(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文件的导入导出的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java的super_Java中this
- 下一篇: bvp解算器是什么_对数小史,以及为什么