天天看點

oracle 導入imp 指令

最常用的      imp  [庫]

file="c:\123.dmp" full=y ignore=y。

例:imp

file = "c:\123.dmp" full=y ignore = y。

oracle中imp指令詳解

oracle的導入實用程式(import

utility)允許從資料庫提取資料,并且将資料寫入作業系統文

件。imp使用的基本格式:imp[username[/password[@service]]],以下例舉imp常用用

法。

1.

擷取幫助

imp

help=y

2.

導入一個完整資料庫

system/manager file=bible_db log=dible_db full=y ignore=y

3.

導入一個或一組指定使用者所屬的全部表、索引和其他對象

system/manager file=seapark log=seapark fromuser=seapark

system/manager file=seapark log=seapark fromuser=(seapark,amy,amyc,harold)

4.

将一個使用者所屬的資料導入另一個使用者

system/manager file=tank log=tank fromuser=seapark touser=seapark_copy

system/manager file=tank log=tank fromuser=(seapark,amy) touser=(seapark1,

amy1)

5.

導入一個表

system/manager file=tank log=tank fromuser=seapark tables=(a,b)

6.

從多個檔案導入

system/manager file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4)

log=paycheck,filesize=1g full=y

7.

使用參數檔案

system/manager parfile=bible_tables.par

bible_tables.par參數檔案:

#import

the sample tables used for the oracle8i database administrator‘s

#bible.

fromuser=seapark

touser=seapark_copy file=seapark log=seapark_import

8.

增量導入(9i中已經取消)

system./manager inctype= rectore full=y file=a

oracle imp/exp幫助說明

c:documents

and settingsadministrator>exp help=y

export:

release 9.2.0.1.0 - production on 星期三 7月 28 17:04:43 2004

copyright

(c) 1982, 2002, oracle corporation. all rights reserved.

通過輸入

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

必須是指令行中的第一個參數。

關鍵字

說明(預設) 關鍵字 說明(預設)

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

使用者名/密碼 full 導出整個檔案 (n)

buffer

資料緩沖區大小 owner 所有者使用者名清單

file

輸出檔案 (expdat.dmp) tables 表名稱清單

compress

導入到一個區 (y) recordlength io 記錄的長度

grants

導出權限 (y) inctype 增量導出類型

indexes

導出索引 (y) record 跟蹤增量導出 (y)

direct

直接路徑 (n) triggers 導出觸發器 (y)

log

螢幕輸出的日志檔案 statistics 分析對象 (estimate)

rows

導出資料行 (y) parfile 參數檔案名

consistent

交叉表的一緻性 (n) constraints 導出的限制條件 (y)

object_consistent

隻在對象導出期間設定為讀的事務處理 (n)

feedback

每 x 行的顯示進度 (0)

filesize

每個轉儲檔案的最大大小

flashback_scn

用于将會話快照設定回以前狀态的 scn

flashback_time

用于擷取最接近指定時間的 scn 的時間

query

用于導出表的子集的 select 子句

resumable

遇到與空格相關的錯誤時挂起 (n)

resumable_name

用于辨別可恢複語句的文本字元串

resumable_timeout

resumable 的等待時間

tts_full_check

對 tts 執行完整的或部分相關性檢查

tablespaces

要導出的表空間清單

transport_tablespace

導出可傳輸的表空間中繼資料 (n)

template

調用 ias 模式導出的模闆名

在沒有警告的情況下成功終止導出。

==================================================

c:documents and settingsadministrator>imp

import:

release 9.2.0.1.0 - production on 星期三 7月 28 17:06:54 2004

 可以通過輸入

imp 指令和您的使用者名/密碼

imp scott/tiger

或者,

可以通過輸入 imp 指令和各種參數來控制“導入”

imp keyword=value 或 keyword=(value1,value2,...,vlauen)

imp scott/tiger ignore=y tables=(emp,dept) full=n

說明(預設) 關鍵字 說明(預設)

使用者名/密碼 full 導入整個檔案 (n)

資料緩沖區大小 fromuser 所有人使用者名清單

輸入檔案 (expdat.dmp) touser 使用者名清單

show

隻列出檔案内容 (n) tables 表名清單

ignore

忽略建立錯誤 (n) recordlength io 記錄的長度

導入權限 (y) inctype 增量導入類型

導入索引 (y) commit 送出數組插入 (n)

導入資料行 (y) parfile 參數檔案名

螢幕輸出的日志檔案 constraints 導入限制 (y)

destroy

覆寫表空間資料檔案 (n)

indexfile

将表/索引資訊寫入指定的檔案

skip_unusable_indexes

跳過不可用索引的維護 (n)

每 x 行顯示進度 (0)

toid_novalidate

跳過指定類型 id 的驗證

statistics

始終導入預計算的統計資訊

在遇到有關空間的錯誤時挂起 (n)

用來辨別可恢複語句的文本字元串

compile

編譯過程, 程式包和函數 (y)

streams_configuration

導入 streams 的一般中繼資料 (y)

streams_instanitation

導入 streams 的執行個體化中繼資料 (n)

下列關鍵字僅用于可傳輸的表空間

導入可傳輸的表空間中繼資料 (n)

将要傳輸到資料庫的表空間

datafiles

将要傳輸到資料庫的資料檔案

tts_owners

擁有可傳輸表空間集中資料的使用者

成功終止導入,但出現警告。

oracle8i/9i exp/imp使用經驗

一、8i

exp常用選項

1、full,這個用于導出整個資料庫,在rows=n一起使用時,可以導出整個資料庫的結構。

例如:

exp

sys file=./db_str.dmp log=./db_str.log full=y rows=n compress=y direct=y

2、buffer和feedback,在導出比較多的資料時,我會考慮設定這兩個參數。例如:

new file=yw97_2003.dmp log=yw97_2003_3.log feedback=10000 buffer=100000000 

tables=wo4,ok_yt

3、fill和log,這兩個參數分别指定備份的dmp名稱和log名稱,包括檔案名和目錄,例子

見上面。

需要說明的是,exp可以直接備份到錄音帶中,即使用file=/dev/rmt0(錄音帶裝置名),但是一

般我們都不這麼做,原因有二:一、這樣做的速度會慢很多,二、現在一般都是使用錄音帶庫

的,不建議直接對錄音帶進行操作。至于沒有使用錄音帶庫的朋友可以考慮和unix的tar結合使

用。

如果你真想使用exp直接到錄音帶,你可以參考metalink文章“exporting

to tape on unix 

systems”(文檔号:30428.1),該文中有詳細解釋。

4、compress參數将在導出的同時合并碎塊,盡量把資料壓縮到initial的extent裡,預設

是n,一般建議使用。direct參數将告訴exp直接讀取資料,而不像傳統的exp那樣,使用

select來讀取表中的資料,這樣就減少了sql語句處理過程。一般也建議使用。不過有些情

況下direct參數是無法使用的。

5、如何使用sysdba執行exp/imp?

這是一個很現實的問題,有時候我們需要使用sysdba來執行exp/imp,如進行傳輸表空間的

exp/imp,以及在9i下用sys使用者來執行exp/imp時,都需要使用sysdba才可。我們可以使

用下面方式連入exp/imp:

"‘sys/sys as sysdba‘" file=1.dmp tables=gototop.t rows=n

6、query參數後面跟的是where條件,值得注意的是,整個where子句需要使用""括起來,

where子句的寫法和select中相同,如果是unix平台所有"和‘都需要使用u26469屏蔽它們

的特殊含義:

gototop/gototop file=1.dmp log=1.log tables=cyx.t query="where c1=20 and 

c2=gototop"

如果是windows平台,則使用下面的格式:

exp  file=c.dmp log=c.log tables=t

query="""where id=1 and name=‘gototop‘"""

二、8i imp常用選項

1、fromuser和touser,使用它們實作将資料從一個schema中導入到另外一個schema中。

2、ignore、grants和indexes,其中ignore參數将忽略表的存在,繼續導入,這個對于需

要調整表的存儲參數時很有用,我們可以先根據實際情況用合理的存儲參數建好表,然後直

接導入資料。而grants和indexes則表示是否導入授權和索引,如果想使用新的存儲參數重

建索引,或者為了加快到入速度,我們可以考慮将indexes設為n,而grants一般都是y。

另外一個exp/imp都有的參數是parfile,它是用來定義exp/imp的參數檔案,也就是說,上

面的參數都可以寫在一個參數檔案中,但我們一般很少使用。

三、oracle9i

exp功能描述

oracle9i

exp在原有的基礎上新增了部分新的參數,按功能主要分為以下幾個部分:

1、object_consistent

- 用于設定exp對象為隻讀以保持對象的一緻性。預設是n。

2、flashback_scn和flashback_time

- 用于支援flashback功能而新增。

3、resumable、resumable_name和resumable_timeout

- 用于支援resumable空間配置設定而新

增。

4、tts_full_check

- 用于在傳輸表空間時使用依賴性檢查。

5、template

- 用于支援ias。

6、tablespaces

- 設定表空間導出模式。個人覺得對于一般使用者而言,這個才是新增參數中

最實用的一個,可以讓使用者在原來的full、owner、tables的基礎上多了一種選擇,使得exp

更加靈活。

四、不同版本的exp/imp問題?

一般來說,從低版本導入到高版本問題不大,麻煩的是将高版本的資料導入到低版本中,

在oracle9i之前,不同版本oracle之間的exp/imp可以通過下面的方法來解決:

1、在高版本資料庫上運作底版本的catexp.sql;

2、使用低版本的exp來導出高版本的資料;

3、使用低版本的imp将資料庫導入到底版本資料庫中;

4、在高版本資料庫上重新運作高版本的catexp.sql腳本。

但在9i中,上面的方法并不能解決問題。如果直接使用底版本exp/imp會出現如下錯誤:

exp-00008:

oracle error %lu encountered

ora-00904:

invalid column name

這已經是一個公布的bug,需要等到oracle10.0才能解決,bug号為2261,你可以到metalink

上去檢視有關此bug的詳細資訊。

bug歸bug,我們的工作還是要做,在沒有oracle的支援之前,我們就自己解決。在oracle9i

中執行下面的sql重建exu81rls視圖即可。

create

or replace view exu81rls

(objown,objnam,policy,polown,polsch,polfun,stmts,chkopt,enabled,spolicy)

as

select u.name, o.name, r.pname, r.pfschma, r.ppname, r.pfname,

decode(bitand(r.stmt_type,1),

0,‘‘, ‘select,‘)

||

decode(bitand(r.stmt_type,2), 0,‘‘, ‘insert,‘)

decode(bitand(r.stmt_type,4), 0,‘‘, ‘update,‘)

decode(bitand(r.stmt_type,8), 0,‘‘, ‘delete,‘),

r.check_opt,

r.enable_flag,

decode(bitand(r.stmt_type,

16), 0, 0, 1)

from

user$ u, obj$ o, rls$ r

where

u.user# = o.owner#

and

r.obj# = o.obj#

(uid = 0 or

uid

= o.owner# or

exists

( select * from session_roles where role=‘select_catalog_role‘)

)

/

grant

select on sys.exu81rls to public;

五、其他問題

本文隻讨論了oracle8i和9i中的exp/imp的一些情況,對于之前的版本,在8.0.x中,

除了query參數不能用外,其它差别不大。針對沒有query的情況,我們可以先在資料庫

中使用查詢條件建立臨時中間表,然後使用exp導出這個中間表即可。至于oracle7因為

目前使用的人較少,gototop不打算在此做詳細解釋了,如果讀者朋友有需求,你可以參考

metalink文檔:“overview of export and import in

oracle7”(文檔号:61949.1)。

關于exp/imp的詳細參數資訊你可以通過exp/imp help=y來獲得。

另外關于傳輸表空間的更多資訊可以參考下面的metelink文檔,本文不再詳述。

[note:77523.1]

transportable tablespaces -- an example to setup and use.

[note:100698.1]

perform tablespace point-in-time recovery using transportable 

tablespace.

六.對于有跨schema的index,imp時可能會報

“segmentation

fault”錯誤。

例如schema

a中建有基于schema b表的索引,在導入a時會報上述錯誤,此時通過

indexes=n來屏蔽導入索引以防止錯誤,事後可以用以下語句查出這樣的索引,最好将

索引放在和基表在同一個schema。

sql>select

index_name,owner,table_name,table_owner

dba_indexes

 where

owner!=table_owner;

七.導入到不同于原表空間的表空間

原來的資料在users表空間裡面,我想把它imp進app表空間,我已經修改了目的

使用者的預設表空間,為什麼結果還是imp到users表空間中了呢?

solution:oracle并沒有提供什麼參數來指定要導入哪個表空間,資料預設将導入到原

本導出時資料所在的表空間中,但是我們可以通過以下的方法來實作導入到不同的表空

間。

1.在imp時候使用indexfile參數

 當給此參數指定了某一檔案名,imp的時候所有的index将不會直接導入到表空間中,

而是在指定的檔案中生成建立index的腳本。

 然後用文本編輯器打開此檔案,直接編輯腳本中的storage參數,修改為想要導入的表

空間名稱。

 然後重新執行imp,使用indexs=n參數将除index之外的objects導入。

 最後進入sql*plus,直接運作剛才編輯的腳本,生成索引。

 該方法适用于将index以及constraints導入指定的表空間。

2.改變目的使用者的預設表空間

 這就是上面說的經常有人提問的方法。但是上述的問題之是以沒有成功,是因為缺少了

下面的幾步。

 首先,收回目的使用者的"unlimited

tablespace"權限:

 revoke

unlimited tablespace from username;

 其次,取消目的使用者在原資料導出表空間中的配額,這樣才能迫使imp把資料導入到

使用者的預設表空間中去。

 然後,将希望導入的表空間設為目的使用者的預設表空間,并添加配額。

 最後,執行imp。

3.使用toad

 toad是強大的oracle資料庫管理軟體,是quest出品的第三方軟體,我們可以使用其

中的rebuild multi

objects工具來實作将多個object轉移到指定的表空間。

 于是我們可以不管三七二十一,先imp,然後再用toad作事後的修改。

關于toad的使用,此處不作詳細解釋。

八.導入工具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生成的檔案

根據情況我們可以用低版本的oracle用戶端的exp導出資料庫,然後進行導入操作。

(7)rollback段不夠

 export/import使用過程中,

如果資料量很大會出現‘rollback段不夠‘的錯誤. 

這時要建一個足夠大的rollback段, 使它online而其他rollback段

offline. 這樣, export/import使用這個大rollback段,

進而避免上述現象.

(8)export/import對squence的影響

在兩種情況下,export/import會對sequence。

a.

如果在export時,使用者正在取sequence的值,可能造成sequence的不

一緻。

b.

另外如果sequence使用cache,在export時,那些在cache中的值就

會被忽略 的,隻是從資料字典裡面取目前值export。如果在進行full方式的

export/import時,恰好在用sequence更新表中某列資料,

而且不是上面兩種

情況,則導出的是更新前的資料。如果采用正常路徑方式,每一行資料都是用

insert語句,一緻性檢查和insert

trigger 如果采用direct方式,某些約

束和trigger可能不觸發,如果在trigger中使用sequence.nextval,将會對sequence

有影響。

九.oracle擷取ddl的幾種常用的方法

大體的分為三種方法:

1.可以通過toad、plsql

develop等第三方工具進行導出dll操作,用這種辦法的好

處在于操作簡單友善,但需要安裝,下面簡單介紹一下用這兩個工具獲得dll語句

的操作。

2.直接通過exp/imp工具

oracle提供的最原始最實用的導入導出工具,我們大體上可以分為三種辦法實作導

出ddl。

通過imp指定indexfile參數,但這種辦法不爽在于有每行前會有rem

文法大體如下:

userid=... tables=emp rows=n file=emp.dmp

userid=... file=emp.dmp indexfile=emp.sql

通過imp指定show=y,同時指定log參數,格式上也不是很爽,在格式上很美

觀的還是通過工具導出的比較美觀

userid=... tables=emp rows=n file= emp.dmp

userid=... file= emp.dmp show=y log=emp.sql

c.

利用unix下有strings指令,文法大體如下,這種方法比較野蠻:

userid=... tables=tab1 rows=n file=tab1.dmp

strings

emp.dmp >emp.sql

emp.sql中就有dll語句了

3.通過9i的dbms_metadata包得到dll語句

基本上用到的文法如下:

擷取單個的建表和建索引的文法

set heading off;

set

echo off;

pages 999;

long 90000;

spool

dept.sql

select

dbms_metadata.get_ddl(‘table‘,‘dept‘,‘scott‘) from dual;

dbms_metadata.get_ddl(‘index‘,‘dept_idx‘,‘scott‘) from dual;

off;

b.擷取一個schema下的所有建表和建索引的文法,以scott為例:

pagesize 0

long 90000

feedback off

echo off

scott_schema.sql

connect

scott/tiger;

dbms_metadata.get_ddl(‘table‘,u.table_name)

 from

user_tables u;

dbms_metadata.get_ddl(‘index‘,u.index_name)

user_indexes u;

擷取某個schema的建全部存儲過程的文法

brucelau /brucelau;

procedures.sql

 dbms_metadata.get_ddl(‘procedure‘,u.object_name)

 user_objects

u

 object_type

= ‘procedure‘;

另:dbms_metadata.get_ddl(‘table‘,‘tab1‘,‘user1‘)

三個參數中,第一個指定導出ddl定義的對象類型(此例中為表類型),第二個是

對象名(此例中即表名),第三個是對象所在的使用者名。

十.優化exp和imp的性能

/imp 可配置一些參數,以改進export和import的性能。至于性能具體能提升多

高,則取決于要導出或導入的資料,以及資料量的大小。

導出性能:用以下通用參數改進export的性能:

direct:對一個export,将direct參數設為direct=y,将資料直接轉移

到export用戶端。這樣的轉移繞過sql指令處理層(估值緩沖區),進而避免了

無謂的資料轉換。

recordlength:增大recordlength參數值,來改進性能。為該參數

推薦的值是db_block_size的一個整數倍,或者是檔案系統i/o塊大小的一個

整數倍。更改這個參數的值會影響寫入磁盤前積累的資料量。該參數的最大值為

64千位元組(64

kb)。

導入性能:用以下通用參數改進import的性能:

buffer:buffer參數指定了緩沖區的大小,資料行将通過這個緩沖區進行轉

移,由此便決定了由import導入的每個陣列插入中的行數。如配合commit=y

參數指定buffer參數,則import會在每一個陣列插入之後進行送出,而不是在

載入完整的表之後再預設地送出。一個較大的buffer參數值有助于改善性能。

但假如buffer值過高,會造成os分頁和換行,反而影響性能。

indexes。indexes參數指定是否導入使用者生成的索引。如指定

indexes=n,則将提高import的性能,因為在一個無索引的表中導入資料要快得

多。注意,如果首先用indexfile=傳回import,來在請求的import模式下提取

索引建立指令,再将其寫入指定的檔案,那麼以後仍可重建索引。

使用indexfile選項時,不會導入資料對象。可對輸出檔案()進行編輯,

并将其作為一個sql腳本使用,以便在import之後建立索引。

另外還可以通過調整一下參數提高exp和imp的性能

.

修改sqlnet.ora在裡面增加trace_level_client=off 

執行dbmspool.sql然後sql>begin 

sql> dbms_shared_pool.sizes(300);

sql>

end;

. sql>alter system flush shared_pool 

sql>alter system set log_checkpoint_interval = 

redologfilesizebytes/512bytes=1000 

也可以修改log_checkpoint_timeout=24000

. sql>alter system set

fast_start_mttr_target =24000 

sql>alter system set pga_aggregate_target=100m

沒有下commit=y是以隻有通過

a.select

undtsn,undoblks from v$undostat;的變化來看資料又沒有進去了

在imp時通過設定 feedback=n筆資料來顯示imp的進度

重整的時候如果要drop

掉table重建的話,一定要注意該table上有沒有fk等

在exp

/imp的時候為了加速需要将index=n參數加進exp/imp執行腳本,這樣的話在

做完imp後需要recreate index

其實資料量大的話recreate也很花時間,故可以通過在

create index

的腳本裡面加入parallel 5;來提速

另i/o可以在windows 的效能的地方看到

十一.import時的對象倒入順序

在倒入資料時,oracle有一個特定的順序,可能随資料庫版本不同而有所變化,

但是現在是這樣的。

 1.

tablespaces 14. snapshot logs

 2.

profiles 15. job queues

 3.

users 16. refresh groups

 4.

roles 17. cluster definitions

 5.

system privilege grants 18. tables (also grants,comments,

 6.

role grants indexes, constraints, auditing)

 7.

default roles 19. referential integrity

tablespace quotas 20. posttables actions

9.

resource costs 21. synonyms

10.

rollback segments 22. views

11.

database links 23. stored procedures

12.

sequences 24. triggers, defaults and auditing

13.

snapshots

按這個順序主要是解決對象之間依賴關系可能産生的問題。trigger最後導入,是以在

insert資料到資料庫時不會激發trigger。在導入後可能會有一些狀态是invalid的

procedure,主要是import時會影響一些資料庫對象,而import并不重新編譯

procedure,進而造成這種情況,可以重新編譯之,就能解決這個問題。

十二.

imp/exp的模糊導入導出

前段時間在網上看到一篇關于imp/exp模糊導入導出的文章,甚感興趣,今

天中午做了一個測試,感覺oracle實在是博大,有很多東西不用的話,對

我們來說永遠是一個陌生的地帶。揭去面紗,也就那麼回事!

說明:使用通配符導出的最大優點,就是當你的庫中有很多表,但你又不想

全導,隻導其中一部分的時候,你可以盡可能的少寫部分代碼,提供工作效

率!

我一般喜歡以示例的方式展現或表達一些東西,這樣大家可能了解/掌握的

更快以下!畢竟很多東西我們大部分同志知其然就可以了!嘿嘿。^|^

備注:該項特性在9i以後新增

測試過程如下:

conn study/study

已連接配接。

sql> create table toms_test_1 (no

int);

表已建立。

create table toms_test_2 (no int);

create table toms_test_3 (no int);

insert into toms_test_1 values(1);

已建立

1 行。

insert into toms_test_2 values(2);

insert into toms_test_3 values(3);

commit;

送出完成。

microsoft

windows xp [版本 5.1.2600]

(c)

版權所有 1985-2001 microsoft corp.

and settings>e:

e:>exp

study/study tables=(study.toms_test%) file=toms_test.dmp 

rows=y

release 9.2.0.1.0 - production on 星期三 6月 7 12:42:32 2006

連接配接到:

oracle9i enterprise edition release 9.2.0.1.0 - production

with

the partitioning, olap and oracle data mining options

jserver

release 9.2.0.1.0 - production

已導出

zhs16gbk 字元集和 al16utf16 nchar 字元集

即将導出指定的表通過正常路徑

...

. 正在導出表 toms_test_1 1 行被導出

. 正在導出表 toms_test_2 1 行被導出

. 正在導出表 toms_test_3 1 行被導出

drop table toms_test_1;

表已丢棄。

drop table toms_test_2;

drop table toms_test_3;

select table_name from tabs where table_name like ‘toms_test%‘;

未標明行

e:>imp study/study file=toms_test.dmp

fromuser=study touser=study

release 9.2.0.1.0 - production on 星期三 6月 7 12:44:01 2006

經由正常路徑導出由export:v09.02.00建立的檔案

已經完成zhs16gbk字元集和al16utf16

nchar 字元集中的導入

. 正在導入表 "toms_test_1" 1行被導入

. 正在導入表 "toms_test_2" 1行被導入

. 正在導入表 "toms_test_3" 1行被導入

e:>

table_name

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

toms_test_1

toms_test_2

toms_test_3

select * from toms_test_1;

no

----------

select * from toms_test_2;

select * from toms_test_3;

select table_name from tabs where table_name like ‘%test%‘;

study/study tables=(study.%test%) file=test.dmp rows=y

release 9.2.0.1.0 - production on 星期三 6月 7 12:51:56 2006

連接配接到: oracle9i enterprise edition release

9.2.0.1.0 - production

e:>imp

study/study file=test.dmp fromuser=study touser=study

release 9.2.0.1.0 - production on 星期三 6月 7 12:53:11 2006

study/study tables=(%test%) file=test.dmp rows=y

release 9.2.0.1.0 - production on 星期三 6月 7 13:08:56 2006

conn toms/toms

create table stu_1 (no int);

create table stu_2 (no int);

insert into stu_1 values(1);

insert into stu_2 values(2);

study/study tables=(%test%,toms.stu%) file=test.dmp rows=y

release 9.2.0.1.0 - production on 星期三 6月 7 13:11:05 2006

目前的使用者已更改為

toms

. 正在導出表 stu_1 1 行被導出

. 正在導出表 stu_2 1 行被導出

drop table stu_1;

drop table stu_2;

select table_name from tabs where table_name like ‘%stu%‘;

study/study file=test.dmp fromuser=study touser=study 

tables=(%test%)

release 9.2.0.1.0 - production on 星期三 6月 7 13:15:22 2006

sql> select * from toms_test_3;

study/study fromuser=toms touser=toms file=test.dmp 

tables=(stu%)

release 9.2.0.1.0 - production on 星期三 6月 7 13:23:49 2006

正在将toms的對象導入到 toms

. 正在導入表 "stu_1" 1行被導入

. 正在導入表 "stu_2" 1行被導入

stu_1

stu_2

select * from stu_1;

select * from stu_2;

繼續閱讀