㈠ 如何用plsql從oracle中導入導出數據
方法/步驟
1
用pl/sql developer導出表的數據時有三種方式:Oracle Export,Sql Insert,pl/sql developer
2
區別
3
導出數據到excel文件
4
excel數據導入到資料庫
5
PL/SQL Developer是Oracle資料庫中用於導入或導出資料庫的主要工具之一,這里主要介紹如何利用PL/SQL Developer導入和導出資料庫,並對導入或導出時的一些注意事項進行相關說明。1、導出步驟1.1. tools ->export user object 選擇選項,導出.sql文件 說明:導出的是建表語句(包括存儲結構)
6
1.2. tools ->export tables-> Oracle Export 選擇選項導出.dmp文件 說明:包含三種導出方式,三種方式都能導出表結構以及數據,如下:
7
第一種是導出為.dmp的文件格式,.dmp文件是二進制的,可以跨平台,還能包含許可權,效率也很不錯,用得最為廣泛 。
8
第二種是導出為.sql文件的,可用文本編輯器查看,通用性比較好,但效率不如第一種,適合小數據量導入導出。尤其注意的是表中不能有大欄位(blob,clob,long),如果有,會提示不能導出(提示如下: table contains one or more LONG columns cannot export in sql format,user Pl/sql developer format instead)。
9
第三種是導出為.pde格式的,.pde為Pl/sql developer自有的文件格式,只能用Pl/sql developer自己導入導出,不能用編輯器查看。
10
2.導入步驟:a.tools->import tables->SQL Inserts 導入.sql文件。b. tools->import talbes->Oracle Import然後再導入dmp文件。 說明:和導出類似,另外,導入之前最好把以前的表刪除,當然導入另外資料庫除外。
㈡ sql資料庫中的數據怎麼導入oracle資料庫
在Oracle伺服器的命令行里sqlplus / as sysdba命令可以登陸到sqlplus命令行里。
然後比如是C:/a.sql,那麼就執行@C:/a.sql,然後跑完後這個a.sql就被導入進來了。
㈢ 如何將oracle資料庫中的數據如何導入到sqlserver
-用DTS移植數據
--數據轉換服務(Data Transformation Services,簡稱DTS),它可以在任意數據源之間移動數據,並在移動過程中對數據進行清洗
--DTS通常用於將數據移動到SQL Server,但實際上它可以方便地在幾乎所有的數據源之間移動數據
--注意:「復制資料庫向導」和「導入/導出向導」實際只是創建和執行了DTS包
--DTS設計器
--「數據轉換服務」->「本地包」->新建或打開包
--「連接」:可用的連接對象
--「任務」:包含了19個關鍵的數據轉換任務,其中最常見的是「轉換數據任務」和「執行SQL任務」
--「包屬性」:在DTS的設計器中選擇「包」->「屬性」或右鍵「包屬性」,可以打開包屬性對話框
--添加「連接」
--添加「任務」
--1、源:源可以是源連接中的一個表、視圖,或者一個SQL查詢
--2、目的:接收數據的表
--3、轉換:對源數據列和目的數據列進行匹配或者連接。一個列轉換可以是下列情形之一:
--復制列是轉換中最常見的情況
--日期時間字元串、小寫字元串、字串、裁剪字元串和大寫串的處理全都與復制列轉換類似,不同的是
--它們中的每一個都增加了某種類型的數據轉換功能
--讀文件和寫文件分別用於將數據導入或者導出到源列中所指定的文件
--對於包含有邏輯或者數據查找的復雜轉換,需要使用ActiveX腳本實現
--4、查找:僅僅把數據從一個表移動到另外一個表是一項很簡單的任務。但在很多情況下我們都必須在轉換的過程中對數據進行修改
--轉換任務可以調用查找腳本找出需要的值來替換源數據集中的值
--a、定義一個查找,「名稱」:需要替換的源數據中的列名;「連接」:目的驅動;「高速緩存」:設置DTS執行時可以緩存的查詢結果數量
--b、「查詢」:可以打開查詢設計器的一個變種,通過它可以為任意的連接定義有效的查詢。該查詢應當以源列表中的值為輸入(參數),
--並返回相應的替代它的值以便插入目的表。輸入的參數用『?』來表示,而select語句所返回的值就是用於在目的表中替代輸入參數的值
--下面的例子從源列中讀出顧客類型的名字,並用查詢所返回的CustomerTypeID來替代它
select customertypeid from customertype where (name = ?)
--為什麼要這樣做呢?源表中的customertype列為字元,而目的表中的customertypeid為整型,所以需要根據源表中的customertype(字元)
--從表customertype中得到相應的customertypeid以便插入到目的表的customertypeid(整數)中
--c、Active轉換?
/*'**********************************************************************
' Visual Basic Transformation Script
'************************************************************************
' Copy each source column to the destination column
Function Main()
DTSDestination("CustomerTypeID") = DTSLookups("CustomerType").Execute(DTSSource("CustomerType"))
Main = DTSTransformStat_OK
End Function
*/
--5、轉換選項:
--工作流控制
--DTS只包含幾個任務的情況在實際中是很少見的。絕大多數DTS包都要執行數十個任務,而這些任務之間又具有錯綜復雜的關系。因此,執行
--順序對於防止錯誤的發生至關重要。
--DTS通過以下選項來控制工作流的執行順序:完成時(藍色);成功時(綠色);失敗時(紅色)
--如:添加任務「執行SQL任務」(用來執行SQL語句),以在執行其他任務之前刪除表中的數據。則此任務為第一個執行。選中此任務和第二個
--任務,然後從「工作流」中選擇需要工作流類型(如完成),就可以設定這兩個任務之間的執行順序。執行好之後作用:先執行第一個任務,
--完成後,再執行第二個任務。。
--如果要為轉換數據任務設置工作流,可以選擇該轉換任務的源連接,右鍵->「工作流屬性」->設置工作流
--執行DTS包
--存儲和移動DTS包
--1、「包」->「保存」:保存到本地伺服器上。展開企業管理器控制台樹的「數據轉換服務」->「本地包」,將會看到那些保存的包
--2、「包」->「另存為」:提供了其他幾種可選的存儲格式和選項
--SQL Server:這種方法將包保存在任何已注冊的SQL Server的MSDB資料庫的sysdtspackages表中。如果已經注冊了相應的伺服器,
--這將是最簡單的把包移動到另外一個SQL Server上的辦法。如果要把包移動到還沒有注冊的伺服器上,應使用「結構花存儲文件」選項
--Meta Data Services:這種高級的方法可以跟蹤已經為DTS修改的數據
--結構化存儲文件:這種方法能夠創建可以復制到另外一個SQL Server,並且可以在另外一台伺服器上打開的文件。一定要注意SQL Server
--和service pack的版本號,因為具有不同的service pack級別的SQL Server 2000實例所使用的結構化存儲文件有可能是不兼容的
--要打開用結構化存儲文件格式保存的包,可以在企業管理器控制台樹的數據轉服務節點的快捷方式菜單中選擇「打開包」菜單命令
--Visual Basic文件:這個選項可以生成與SQL Server DTS包完成同樣任務的VB腳本
--注意:如果已經使用「包」->「另存為」命令保存了包,「包」->「保存」命令將用上一個「另存為」命令所選擇的位置和格式來保存這個包
--增量和版本
--數據轉換服務還有一個很好的特性:它能夠對包的變化進行管理。包的每次保存都會產生該包的一個新版本,最終就會形成該包的多個連續的版本
--如果要查看任意包所保存的各個版本,可以在企業管理器中,從本地包清單中選擇一個DTS包,然後選擇「操作」->「版本」菜單命令,或者從
--該包的快捷方式菜單中選擇「版本」菜單。此時將會打開「DTS包版本」對話框,並顯示該包的各個版本的日期和描述
--使用「DTS包版本」對話框,可以打開以前的版本進行編輯或者對它們進行清理。如果想恢復到某個以前的版本,可以打開該版本進行編輯,然後】
--使用「包」->「另存為」菜單命令以一個新名字保存該包
㈣ 怎樣將SQL腳本導入oracle資料庫中
將資料庫的SQL腳本文件導入到oracle中
#1. 首先以管理員的身份登錄到oracle系統中
cmd;
sqlplus sys/sys as sysdba;
#2.創建用戶test,密碼為test
create user test identified by test;
#3.創建表空間,在D盤下建立50m的表空間data_dbfcreate tablespace ts_tablespace datefile 'D:\data_dbf' size 50m;#4.為用戶分配表空間
alter user test default tablespace ts_tablespace to test;#5.給用戶授權
grant create session, create table, create view, unlimited tablespace to test;#6.以test/test登錄
conn test/test;
#7.導入SQL語句,導入創建好的表
@D:\test.sql
#8.查詢表結構
㈤ 如何用把Oracle中的數據插入到sqlserver中
--用dts移植數據
--數據轉換服務(Data Transformation Services,簡稱dts),它可以在任意數據源之間移動數據,並在移動過程中對數據進行清洗
--dts通常用於將數據移動到sql Server,但實際上它可以方便地在幾乎所有的數據源之間移動數據
--注意:「復制資料庫向導」和「導入/導出向導」實際只是創建和執行了dts包
--dts設計器
--「數據轉換服務」->「本地包」->新建或打開包
--「連接」:可用的連接對象
--「任務」:包含了19個關鍵的數據轉換任務,其中最常見的是「轉換數據任務」和「執行sql任務」
--「包屬性」:在dts的設計器中選擇「包」->「屬性」或右鍵「包屬性」,可以打開包屬性對話框
--添加「連接」
--添加「任務」
--1、源:源可以是源連接中的一個表、視圖,或者一個sql查詢
--2、目的:接收數據的表
--3、轉換:對源數據列和目的數據列進行匹配或者連接。一個列轉換可以是下列情形之一:
--復制列是轉換中最常見的情況
--日期時間字元串、小寫字元串、字串、裁剪字元串和大寫串的處理全都與復制列轉換類似,不同的是
--它們中的每一個都增加了某種類型的數據轉換功能
--讀文件和寫文件分別用於將數據導入或者導出到源列中所指定的文件
--對於包含有邏輯或者數據查找的復雜轉換,需要使用ActiveX腳本實現
--4、查找:僅僅把數據從一個表移動到另外一個表是一項很簡單的任務。但在很多情況下我們都必須在轉換的過程中對數據進行修改
--轉換任務可以調用查找腳本找出需要的值來替換源數據集中的值
--a、定義一個查找,「名稱」:需要替換的源數據中的列名;「連接」:目的驅動;「高速緩存」:設置dts執行時可以緩存的查詢結果數量
--b、「查詢」:可以打開查詢設計器的一個變種,通過它可以為任意的連接定義有效的查詢。該查詢應當以源列表中的值為輸入(參數),
--並返回相應的替代它的值以便插入目的表。輸入的參數用『?』來表示,而select語句所返回的值就是用於在目的表中替代輸入參數的值
--下面的例子從源列中讀出顧客類型的名字,並用查詢所返回的CustomerTypeID來替代它
select customertypeid from customertype where (name = ?)
--為什麼要這樣做呢?源表中的customertype列為字元,而目的表中的customertypeid為整型,所以需要根據源表中的customertype(字元)
--從表customertype中得到相應的customertypeid以便插入到目的表的customertypeid(整數)中
--c、Active轉換?
/*'**********************************************************************
' Visual Basic Transformation Script
'************************************************************************
' Copy each source column to the destination column
Function Main()
dtsDestination("CustomerTypeID") = dtsLookups("CustomerType").Execute(dtsSource("CustomerType"))
Main = dtsTransformStat_OK
end Function
*/
--5、轉換選項:
--工作流控制
--dts只包含幾個任務的情況在實際中是很少見的。絕大多數dts包都要執行數十個任務,而這些任務之間又具有錯綜復雜的關系。因此,執行
--順序對於防止錯誤的發生至關重要。
--dts通過以下選項來控制工作流的執行順序:完成時(藍色);成功時(綠色);失敗時(紅色)
--如:添加任務「執行sql任務」(用來執行sql語句),以在執行其他任務之前刪除表中的數據。則此任務為第一個執行。選中此任務和第二個
--任務,然後從「工作流」中選擇需要工作流類型(如完成),就可以設定這兩個任務之間的執行順序。執行好之後作用:先執行第一個任務,
--完成後,再執行第二個任務。。
--如果要為轉換數據任務設置工作流,可以選擇該轉換任務的源連接,右鍵->「工作流屬性」->設置工作流
--執行dts包
--存儲和移動dts包
--1、「包」->「保存」:保存到本地伺服器上。展開企業管理器控制台樹的「數據轉換服務」->「本地包」,將會看到那些保存的包
--2、「包」->「另存為」:提供了其他幾種可選的存儲格式和選項
--sql Server:這種方法將包保存在任何已注冊的sql Server的MSDB資料庫的sysdtspackages表中。如果已經注冊了相應的伺服器,
--這將是最簡單的把包移動到另外一個sql Server上的辦法。如果要把包移動到還沒有注冊的伺服器上,應使用「結構花存儲文件」選項
--Meta Data Services:這種高級的方法可以跟蹤已經為DTS修改的數據
--結構化存儲文件:這種方法能夠創建可以復制到另外一個sql Server,並且可以在另外一台伺服器上打開的文件。一定要注意sql Server
--和service pack的版本號,因為具有不同的service pack級別的SQL Server 2000實例所使用的結構化存儲文件有可能是不兼容的
--要打開用結構化存儲文件格式保存的包,可以在企業管理器控制台樹的數據轉服務節點的快捷方式菜單中選擇「打開包」菜單命令
--Visual Basic文件:這個選項可以生成與SQL Server DTS包完成同樣任務的vb腳本
--注意:如果已經使用「包」->「另存為」命令保存了包,「包」->「保存」命令將用上一個「另存為」命令所選擇的位置和格式來保存這個包
--增量和版本
--數據轉換服務還有一個很好的特性:它能夠對包的變化進行管理。包的每次保存都會產生該包的一個新版本,最終就會形成該包的多個連續的版本
--如果要查看任意包所保存的各個版本,可以在企業管理器中,從本地包清單中選擇一個DTS包,然後選擇「操作」->「版本」菜單命令,或者從
--該包的快捷方式菜單中選擇「版本」菜單。此時將會打開「DTS包版本」對話框,並顯示該包的各個版本的日期和描述
--使用「DTS包版本」對話框,可以打開以前的版本進行編輯或者對它們進行清理。如果想恢復到某個以前的版本,可以打開該版本進行編輯,然後】
--使用「包」->「另存為」菜單命令以一個新名字保存該包