當前位置:首頁 » 編程語言 » imp導出sql
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

imp導出sql

發布時間: 2023-02-01 21:29:23

Ⅰ oracle 怎樣用imp.exe導入導出數據

Oracle 提供兩個工具imp.exe 和exp.exe分別用於導入和導出數據。這兩個工具位於Oracle_home/bin目錄下。

導出數據exp

1 將資料庫ATSTestDB完全導出,用戶名system 密碼123456 導出到c:/export.dmp中
exp system/123456@ATSTestDB file=c:/export.dmp full=y
其中ATSTestDB為資料庫名稱,system為該資料庫里的賬戶,123456為其密碼。
2 將資料庫中system用戶與sys用戶的所有相關資源導出(表,存儲過程,方法,視圖等等)
exp system/123456@ATSTestDB file= c:/export.dmp owner=(system,sys)
3 將資料庫中的表sys.table1、owbsys.table2導出
exp system/123456@ATSTestDB file= c:/export.dmp tables=( sys.table1, owbsys.table2)
注意,需要加上表的schema名稱,如果沒有加的話默認是導當前connected用戶的表,當然你連接上去的賬戶要對相應的表有許可權。
4 將資料庫中的表table1中的欄位Title以"GangGe"打頭的數據導出
exp system/123456@ATSTestDB file= c:/export.dmp tables=(table1) query=/" where Title like 'GangGe%'/"
斜杠 「/」 後面跟冒號是為了轉義字元冒號」 「 「用的,因為後面是一條條件查詢語句。Query參數只能指定一個,如果Query要為多張表,所以同樣,tables裡面也只能有一張表,或者多張表,然後query裡面的條件在這些表上面都可以運行。否則只好多寫幾條exp語句了。
導出後,或許發現數據比較大,我們可以用一些壓縮工具對數據進行二次壓縮,例如用winzip, winrar, 7zip等第三方工具。同樣,exp支持一個參數用戶直接對數據進行壓縮:compress = y, 這個參數直接加到命令的後面即可實現導出的同時壓縮數據。

1 將資料庫TEST完全導出,用戶名system 密碼manager 導出到D:/chu.dmp中
exp system/manager@TEST file=d:/chu.dmp full=y
2 將資料庫中system用戶與sys用戶的表導出
exp system/manager@TEST file=d:/chu.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:/chu.dmp tables=(table1) query=" where filed1 like '00%'"
上面是常用的導出,對於壓縮,既用winzip把dmp文件可以很好的壓縮。
也可以在上面命令後面 加上 compress=y 來實現。

導入數據imp

我們知道怎麼提取數據,那麼還原的時候,就需要使用imp命令把導出的數據載入進去。
1 向ATSTestDB裡面載入c:/export.dmp數據
imp system/123456@ATSTestDB file=c:/export.dmp
好了,導數據得時候,有可能報錯了。為什麼?有兩種主要的原因:
A. 導入的對象(表,視圖,方法等)原本不屬於當前連接的用戶的
B. 導入的對象在該資料庫的指定用戶下已經存在
C. 導入的對象的原本用戶不再這個資料庫里
所有對象全部導入到指定的賬戶下:
Imp system/123456@ATSTestDB file=c:/export.dmp fromuser=sys touser=system
其中fromuser=sys為.dmp文件里的對象的原先的owner, touser=system 為作為導入的對象的新的Owner.
忽略/插入數據
Imp system/123456@ATSTestDB file=c:/export.dmp ignore=y
其中ignore=y告訴imp.exe把數據直接插入到相應對象(並且如果導入的對象裡面有其他的對象,如約束,索引等,會在數據插入後被創建)。
2 載入其中的指定表table1,table2
imp system/123456@ATSTestDB file=C:/export.dmp tables=(table1,table2)
3 忽略載入約束
有時候導數據進來的時候,我們不需要把它的約束,比如一些外鍵約束等都導進來,可以加上參數constraints=N
imp system/123456@ATSTestDB file=C:/export.dmp tables=(table1,table2) constraints=N
4 不載入索引(比如唯一性的索引)
imp system/123456@ATSTestDB file=C:/export.dmp tables=(table1,table2) indexs=N
5 只載入結構,不載入數據
如果只要表的結構等定義(約束,觸發器),那麼不要裡面的數據,可以加上參數rows=N
imp system/123456@ATSTestDB file=C:/export.dmp tables=(table1,table2) rows=N
對於上述操作登陸操作的對象system是管理員,如果不是管理員,而是普通用戶,那麼這個用戶必須有創建刪除對象的權利,對象可能包括 表,視圖,方法,存儲過程等等常見的對象。為什麼「可能」包括?這個要看導入導出的時候是否涉及相關類型的對象而定。

1 將D:/chu.dmp 中的數據導入 TEST資料庫中。
imp system/manager@TEST file=d:/chu.dmp
imp aichannel/aichannel@TEST full=y file=d:/datanewsmgnt.dmp ignore=y
上面可能有點問題,因為有的表已經存在,然後它就報錯,對該表就不進行導入。
在後面加上 ignore=y 就可以了。
2 將d:chu.dmp中的表table1 導入
imp system/manager@TEST file=d:/chu.dmp tables=(table1)
基本上上面的導入導出夠用了。不少情況要先是將表徹底刪除,然後導入。
注意:
操作者要有足夠的許可權,許可權不夠它會提示。
資料庫時可以連上的。可以用tnsping TEST 來獲得資料庫TEST能否連上。

Ⅱ 如何在Oracle中使用exp和imp導出,導入dmp資料庫文件

1、首先進入命令行,點擊開始,輸入cmd。

Ⅲ 導入可執行文件 oracle導入imp exe pl sql ,這個文件在哪

一、在安裝目錄里,比如:

1、導入imp:F:appAdministratorproct11.1.0db_1BINimp.exe;

2、導出exp:F:appAdministratorproct11.1.0db_1BINexp.exe;

3、sql插入:F:appAdministratorproct11.1.0db_1BINsqlplus.exe;

二、需要注意的是:

plsql的導出功能要調用Oracle客戶端中的exp.exe文件,需要安裝完整的Oracle客戶端。

(3)imp導出sql擴展閱讀

1、使用PLSQL導入導出,都是在工具下面,導入導出,需要注意的是用到oracle的可執行文件

E:appAdministratorproct11.1.0db_1BINexp.exe;

2、如果導出的時候出現了閃動一下,但是沒有導出來的情況,是因為沒有配置環境變數

配置環境變數ORACLE_HOME=D:appproct11.2.0dbhome_1;

3、導出的時候如果出現exp-00011的錯誤,原因是該表中沒有數據;

4、導入dmp文件的時候報錯,其中一個可能的原因是許可權,如果導出的時候是dba許可權,現在用的另外一個賬戶登錄,許可權不夠也會出現報錯,此時需要給當前用戶賦予dba許可權。

Ⅳ 導入可執行文件 oracle導入imp exe pl sql ,這個文件在哪

一、文件在安裝目錄里

1、導入imp:F:appAdministratorproct11.1.0db_1BINimp.exe;

2、導出exp:F:appAdministratorproct11.1.0db_1BINexp.exe;

3、plsql插入:F:appAdministratorproct11.1.0db_1BINsqlplus.exe;

4、PLSQL導入導出,用到oracle的可執行文件:E:appAdministratorproct11.1.0db_1BINexp.exe;

備註:導入之前最好把以前的表刪除,當然導入另外資料庫除外。 另外導入時當發現進度條一直卡在一個點,而且導出的文件不再增大時,甚至是提示程序未響應,千萬不要以為程序卡死了,這個導入導出就是比較緩慢,只要沒有提示報錯,或者導入完成就不要停止程序。

Ⅳ linux下怎麼用exp和imp導出和導入指定的oracle資料庫表

exphelp=y
imphelp=y
說的很清楚
資料庫歸檔不歸檔都可以,scott是一個用戶名,tiger是這個用戶的密碼,舉兩個例子
expscott/tigerowner=scottfile=temp.dmplog=temp.log
expscott/tigertables=(emp,dept)file=temp.dmplog=temp.log

Ⅵ 資料庫的導入與導出

導出資料庫命令:
mysqlmp -u root -p mydb2 > e:\mydb.sql
把資料庫mydb2導出到e盤的mydb.sql

注意:在dos下進入mysql安裝的bin目錄下,但是不要登陸。

導入資料庫命令:
mysqlmp -u root -p mydb2 < e:\mydb.sql
把資料庫e盤的mydb.sql導入到mydb2

注意:要先新建mydb2 然後使用導入語句

oracle 用戶創建 資料庫的導入導出imp/exp
可以在SQLPLUS.EXE或者DOS(命令行)中執行執行環境:可以在SQLPLUS.EXE或者DOS(命令行)中執行,
DOS中可以執行時由於 在oracle 8i 中 安裝目錄ora81BIN被設置為全局路徑,
該目錄下有EXP.EXE與IMP.EXE文件被用來執行導入導出。

創建用戶

給用戶增加導入數據許可權的操作
第一,啟動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
或者 imp userid=system/manager full=y file=filename.dmp

執行示例:
F:WorkOracle_Databackup>imp userid=test/test full=y file=inner_notify.dmp 17jquery.com

下面介紹的是導入導出的實例。
數據導出:
1 將資料庫TEST完全導出,用戶名system 密碼manager 導出到D:chu.dmp中
exp system/manager@TEST file=d:chu.dmp full=y
exp fang/fang@ORCL file=d:oais20100401.dmp full=y
exp oais/oais@ORCL file=d:oais_mj.dmp full=y
2 將資料庫中system用戶與sys用戶的表導出
exp system/manager@TEST file=d:chu.dmp owner=(system,sys)
3 將資料庫中的表inner_notify、notify_staff_relat導出
exp aichannel/aichannel@TESTDB2 file= d:datanewsmgnt.dmp tables=(inner_notify,notify_staff_relat)
exp fang/fang@ORCL file=d:oais20100401_essmenu.dmp tables=(essmenu)
4 將資料庫中的表table1中的欄位filed1以"00"打頭的數據導出
exp system/manager@TEST file=d:chu.dmp tables=(table1) query=" where filed1 like '00%'"

上面是常用的導出,對於壓縮,既用winzip把dmp文件可以很好的壓縮。
也可以在上面命令後面 加上 compress=y 來實現。 一起jquery,17jquery

數據的導入
1 將D:chu.dmp 中的數據導入 TEST資料庫中。
imp system/manager@TEST file=d:chu.dmp
imp aichannel/aichannel@HUST full=y file=d:datanewsmgnt.dmp ignore=y
上面可能有點問題,因為有的表已經存在,然後它就報錯,對該表就不進行導入。
在後面加上 ignore=y 就可以了。
2 將d:chu.dmp中的表table1 導入
imp system/manager@TEST file=d:chu.dmp tables=(table1)

基本上上面的導入導出夠用了。不少情況要先是將表徹底刪除,然後導入。 MSSQL的導入導出有三種方法,不可以在cmd模式下進行:1.使用Transact-SQL進行數據導入導出 我們很容易看出,Transact-SQL方法就是通過SQL語句方式將相同或不同類型的資料庫中的數據互相導入導出或者匯集在一處的方法。如果是在不同的SQL Server資料庫之間進行數據導入導出,那將是非常容易做到的。一般可使用SELECT INTO FROM和INSERT INTO。使用 SELECT INTO FROM時INTO後跟的表必須存在,也就是說它的功能是在導數據之前先建立一個空表,然後再將源表中的數據導入到新建的空表中,這就相當於表的復制(並不會復製表的索引等信息)。而INSERT INTO的功能是將源數據插入到已經存在的表中,可以使用它進行數據合並,如果要更新已經存在的記錄,可以使用UPDATE。 SELECT * INTO table2 FROM table1 --table1和table2的表結構相同 INSERT INTO table2 SELECT * FROM table3 --table2和table3的表結構相同 當在異構資料庫之間的進行數據導入導出時,情況會變得復雜得多。首先要解決的是如何打開非SQL Server資料庫的問題。 在SQL Server中提供了兩個函數可以根據各種類型資料庫的OLE DB Provider打開並操作這些資料庫,這兩個函數是OPENDATASOURCE和OPENROWSET。它們的功能基本上相同,不同之處主要有兩點。 2. 使用命令行BCP導入導出數據 很多大型的系統不僅僅提供了友好的圖形用戶介面,同時也提供了命令行方式對系統進行控制。在SQL Server中除了可以使用SQL語句對數據進行操作外,還可以使用一個命令行工具BCP對數據進行同樣的操作。BCP是基於DB-Library 客戶端庫的工具。它的功能十分強大,BCP能夠以並行方式將數據從多個客戶端大容量復制到單個表中,從而大大提高了裝載效率。但在執行並行操作時要注意的是只有使用基於 ODBC 或 SQL OLE DB 的 API 的應用程序才可以執行將數據並行裝載到單個表中的操作。 BCP可以將SQL Server中的數據導出到任何OLE DB所支持的資料庫的,如下面的語句是將authors表導出到excel文件中。 bcp pubs.dbo.authors out c:\temp1.xls -c -q -S"GNETDATA/GNETDATA" -U"sa" -P"password" BCP不僅能夠通過命令行執行,同時也可以通過SQL執行,這需要一個系統存儲過程xp_cmdshell來實現,如上面的命令可改寫為如下形式。 EXEC master..xp_cmdshell 'bcp pubs.dbo.authors out c:\temp1.xls -c -q -S"GNETDATA/GNETDATA" -U"sa" -P"password"' 3. 使用數據轉換服務(DTS)導入導出數據 DTS是SQL Server中導入導出數據的核心,它除有具有SQL和命令行工具BCP相應的功能外,還可以靈活地通過VBScript、JScript等腳本語言對數據進行檢驗、凈化和轉換。 SQL Server為DTS提供了圖形用戶介面,用戶可以使用圖形界面導入導出數據,並對數據進行相應的處理。同時,DTS還以com組件的形式提供編程介面,也就是說任何支持com組件的開發工具都可以利用com組件使用DTS所提供的功能。DTS在SQL Server中可以保存為不同的形式,可以是包的形式,也可以保存成Visual Basic源程序文件,這樣只要在VB中編譯便可以使用DTS com組件了。 DTS和其它數據導入導出方式最大的不同就是它可以在處理數據的過程中對每一行數據進行深度處理。以下是一段VBScript代碼,這段代碼在處DTS理每一條記錄時執行,DTSDestination表示目標記錄,DTSSource表示源記錄,在處理逗婚姻狀況地時,將源記錄中的逗婚姻狀況地中的0或1轉換成目標記錄中逗已婚地或逗未婚地。 Function Main() DTSDestination("姓名") = DTSSource("姓名") DTSDestination("年齡") = DTSSource("年齡") If DTSDestination("婚姻狀況") = 1 Then DTSDestination("婚姻狀況") = "已婚" Else DTSDestination("婚姻狀況") = "未婚" End If Main = DTSTransformStat_OK End Function

Ⅶ oracle用命令行導出sql語句文本

導出命令:
1)單表導出:exp 用戶名/密碼@伺服器別名 tables=表名 file=d:名稱.dmp

expjm110/jm110@120_2tables=ajbfile=d:ajb.dmp


多張表:

expjm110/jm110@120_2tables=(ajb,jjdwb)file=d:ajb2.dmp


2)完全導出:也就是資料庫中的所有表都導出
格式:exp 用戶名/密碼@伺服器別名 file=d:名稱.dmp


expjm110/jm110@120_2file=d:jm110.dmp



導入命令:
因為導入的內容都是dmp文件,所以未涉及到單表導入的情況,統一命令格式
格式:imp 新用戶名/密碼@新伺服器別名 file=d:名稱.dmp buffer=102400000 feedback=10000 log=d:名稱.txt full=y
參數:buffer:設置緩存大小,越大越好,它決定導入的速度
full:完全導入,導出表結構及存儲過程等等


impjm110/jm110@120_1file=d:jm110.dmpbuffer=102400000feedback=10000log=d:jm110.txtfull=y

Ⅷ 怎樣將Oracle中的數據導出成SQL腳本

Oracle SQL Developer

1, 查詢窗口查詢數據

selececolumn1,column2,...
fromtable
wherecolumn3='';


2, 下載查詢結果

查詢結果中任意位置點擊右鍵,點擊導出。

Ⅸ 如何在Oracle中使用exp和imp導出,導入dmp資料庫文件

1、EXP: 有三種主要的方式(完全、用戶、表) 1、完全: EXP SYSTEM/MANAGER BUFFER=64000 FILE=C:\FULL.DMP FULL=Y 如果要執行完全導出,必須具有特殊的許可權 2、用戶模式: EXP SONIC/SONIC BUFFER=64000 FILE=C:\SONIC.DMP OWNER=SONIC 這樣用戶SONIC的所有對象被輸出到文件中。 3、表模式: EXP SONIC/SONIC BUFFER=64000 FILE=C:\SONIC.DMP OWNER=SONIC TABLES=(SONIC) 這樣用戶SONIC的表SONIC就被導出 2、IMP: 具有三種模式(完全、用戶、表) 1、完全: IMP SYSTEM/MANAGER BUFFER=64000 FILE=C:\FULL.DMP FULL=Y 2、用戶模式: IMP SONIC/SONIC BUFFER=64000 FILE=C:\SONIC.DMP FROMUSER=SONIC TOUSER=SONIC 這樣用戶SONIC的所有對象被導入到文件中。必須指定FROMUSER、TOUSER參數,這樣才能導入數據。 3、表模式: EXP SONIC/SONIC BUFFER=64000 FILE=C:\SONIC.DMP OWNER=SONIC TABLES=(SONIC) 這樣用戶SONIC的表SONIC就被導入。