當前位置:首頁 » 編程語言 » oracle導入sql數據

oracle導入sql數據

發布時間: 2022-04-21 05:41:42

① oracle導入sql腳本數據怎麼不變

檢查SQL腳本的具體內容,如果腳本中包含delete insert update,基本上會改變數據,如果不包含這類腳本,一般不會改變數據。

② oracle導入sql文件

1. 獲取幫助

imp help=y
2. 導入一個完整資料庫

imp system/manager file=bible_db log=dible_db full=y ignore=y
3. 導入一個或一組指定用戶所屬的全部表、索引和其他對象

imp system/manager file=seapark log=seapark fromuser=seapark
imp system/manager file=seapark log=seapark fromuser=(seapark,amy,amyc,harold)
4. 將一個用戶所屬的數據導入另一個用戶

imp system/manager file=tank log=tank fromuser=seapark touser=seapark_
imp system/manager file=tank log=tank fromuser=(seapark,amy)
touser=(seapark1, amy1)
5. 導入一個表

imp system/manager file=tank log=tank fromuser=seapark TABLES=(a,b)
6. 從多個文件導入

imp system/manager file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4)
log=paycheck, filesize=1G full=y
7. 使用參數文件

imp 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_ file=seapark log=seapark_import
8. 增量導入

imp system./manager inctype= RECTORE FULL=Y FILE=A
-------------------------------------------------------------------------------------------------------------------------------------------

1. 獲取幫助
exp help=y

2. 導出一個完整資料庫
exp system/manager file=bible_db log=dible_db full=y

3. 導出資料庫定義而不導出數據
exp system/manager file=bible_db log=dible_db full=y rows=n

4. 導出一個或一組指定用戶所屬的全部表、索引和其他對象
exp system/manager file=seapark log=seapark owner=seapark
exp system/manager file=seapark log=seapark owner=(seapark,amy,amyc,harold)
注意:在導出用戶時,盡管已經得到了這個用戶的所有對象,但是還是不能得到這些對象引用的任何同義詞。解決方法是用以下的SQL*Plus命令創建一個腳本文件,運行這個腳本文件可以獲得一個重建seapark所屬對象的全部公共同義詞的可執行腳本,然後在目標資料庫上運行該腳本就可重建同義詞了。

SET LINESIZE 132
SET PAGESIZE 0
SET TRIMSPOOL ON
SPOOL c:\seapark.syn
SELECT 'Create public synonym '||synonym_name
||' for '||table_owner||'.'||table_name||';'
FROM dba_synonyms
WHERE table_owner = 'SEAPARK' AND owner = 'PUBLIC';
SPOOL OFF

5. 導出一個或多個指定表
exp seapark/seapark file=tank log=tank tables=tank
exp system/manager file=tank log=tank tables=seapark.tank
exp system/manager file=tank log=tank tables=(seapark.tank,amy.artist)

6. 估計導出文件的大小
全部表總位元組數:
SELECT sum(bytes)
FROM dba_segments
WHERE segment_type = 'TABLE';

seapark用戶所屬表的總位元組數:
SELECT sum(bytes)
FROM dba_segments
WHERE owner = 'SEAPARK'
AND segment_type = 'TABLE';

seapark用戶下的aquatic_animal表的位元組數:
SELECT sum(bytes)
FROM dba_segments
WHERE owner = 'SEAPARK'
AND segment_type = 'TABLE'
AND segment_name = 'AQUATIC_ANIMAL';

7. 導出表數據的子集(oracle8i以上)
NT系統:

exp system/manager query='Where salad_type='FRUIT'' tables=amy.salad_type
file=fruit log=fruit
UNIX系統:

exp system/manager query=\"Where salad_type=\'FRUIT\'\" tables=amy.salad_type
file=fruit log=fruit

8. 用多個文件分割一個導出文件
exp system/manager
file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4)
log=paycheck, filesize=1G tables=hr.paycheck

9. 使用參數文件
exp system/manager parfile=bible_tables.par
bible_tables.par參數文件:

#Export the sample tables used for the Oracle8i Database Administrator's Bible.
file=bible_tables
log=bible_tables
tables=(
amy.artist
amy.books
seapark.checkup
seapark.items
)

10. 增量導出
「完全」增量導出(complete),即備份整個資料庫
exp system/manager inctype=complete file=990702.dmp
「增量型」增量導出(incremental),即備份上一次備份後改變的數據
exp system/manager inctype=incremental file=990702.dmp
「累計型」增量導出(cumulative),即備份上一次「完全」導出之後改變的數據
exp system/manager inctype=cumulative file=990702.dmp

imp boss/boss@scott file=jkluio.dmp log=jkluio.log fromuser=boss touser=boss commit=y;

exp boss/123qwe!@CBGLDB file=boss.dmp log=boss.log owner=boss;

③ oracle 資料庫如何導入 .sql文件

在sql*plus下,直接@+腳本路徑,例如:@d:\orcl2.sql

④ sql oracle怎麼導入數據

在我們使用SQL Server資料庫的過程中,有時需要將SQL Server數據導出,導入到其他的資料庫中,比如導入到Oracle中。

假設要將SQL Server中的Northwind資料庫中的Procts表導出到Oracle的Scott用戶

首先需要有安裝SQL Server企業版

1.打開工具:

開始->程序->

導入和SQL Server數據導出數據

2.下一步,選擇數據源

[數據源]選擇「用於SQL Server的Microsoft OLE DB提供程序」,這應該是預設值。

[伺服器]選擇要導出數據的伺服器,如果是本機,選擇(local)

[資料庫]選擇要導出的數據所在的庫,這里選擇Northwind

3.下一步,選擇目的

[目的]選擇Microsoft ODBC for Oracle

[DSN]選擇用戶/系統DSN一項,然後在下拉列表框中找一個已經連接到了Scott用戶的DSN名稱。

如果下拉列表中沒有,點下拉列表框右側的[新建],出現創建新數據源界面。

接下來選擇系統數據源,下一步,在驅動程序列表中選擇Microsoft ODBC for Oracle

下一步,完成,出現Microsoft ODBC for Oracle安裝界面

[數據源名稱]隨便輸入,比如sss

[說明]可以不填

[用戶名稱]填入要SQL Server數據導出到的Oracle用戶名稱,這里是scott

[伺服器]填入要連接到Oracle伺服器所使用的服務名,比方說使用sqlplus scott/tiger@server1可以連接到資料庫,那麼這里就填入server1。如果本機就是伺服器,使用sqlplus scott/tiger即可連接到資料庫,這里空著不填即可。

這樣就創建好了一個數據源sss,保證下拉列表框中選擇了sss一項。

[用戶名]填入SQL Server數據導出到的Oracle用戶名稱,這里是scott

[密碼]填入SQL Server數據導出到的Oracle用戶使用的密碼,這里是tiger

4.下一步,指定表復制或查詢

如果要導出的內容是整個表,選擇[從源資料庫復製表和視圖]

如果要導出的內容是表的一部分列,行,可以選擇[用一條查詢指定要傳輸的數據],這時需要寫出一個查詢語句

這里選擇第一項[從源資料庫復製表和視圖]

5.下一步,選擇源表和視圖

點中要導出的表Procts一行的復選框,目的、轉換兩欄就會出現內容。

目的可以用來選擇表名。轉換可以用來修改列的數據類型或是整個建表的SQL語句

6.下一步,保存、調度和復制包

選中立即運行

7.下一步,正在完成DTS導入/導出向導

8.完成

提示「成功地將n個表從Microsoft SQLServer復制到了Oracle」

9.完成,關閉導入導出程序

注意:因為oracle的表名都是大寫的,而SQL的表可能是大小混寫的,所以導入後在oracle里查不到該表,比如這個Procts表在oracle里查詢就應該寫成select * from scott."Procts";為了方便查詢可以通過批量修改表名為大寫以便後面導數據的工作。

---導完數據後執行下面語句,生成把表名修改成大寫的操作

select 'ALTER TABLE '||'"'||table_name||'"'||' RENAME TO '|| upper(table_name)||';' from user_tab_comments;

把生成的文件執行即可把此用戶下的所有表名修改成大寫。

⑤ 如何把oracle的數據導入到sql

在Oracle伺服器的命令行里sqlplus / as sysdba命令可以登陸到sqlplus命令行里。
然後比如是C:/a.sql,那麼就執行@C:/a.sql,然後跑完後這個a.sql就被導入進來了。

⑥ oracle資料庫怎麼導入sql文件

不知道你現在使用SQL Developer 還是使用DOS。

你說的這個問題很簡單,把那兩個.sql文件用記事本打開,裡面全都是一些SQL語句。把這些SQL語句都復制下來,粘貼到SQL Developer 或DOS中,就可以了。記住最後盡量Commit 提交一下。

我也是新手,有什麼不會的大家一起討論吧。求採納!!

⑦ 將sql數據文件導入oracle應該注意什麼

mysql,要看清楚url,dbconfig,dbname,
password等是否和數據文件中的一致,如果一致的話,請查看mysql的驅動器是否連接資料庫正確,以及是否開啟這個資料庫,如果不行,查看內容頁中的連接方式是否和.sql文件中的變數命名關聯,關聯的代碼寫入方式是否正確?

⑧ 怎麼將oracle的數據導入sql中

oracle數據的導入導出:
①導入導出命令:
Oracle數據導入導出imp/exp就相當於oracle數據還原與備份。exp命令可以把數據從遠程資料庫伺服器導出到本地的dmp文件, imp命令可以把dmp文件從本地導入到遠處的資料庫伺服器中。 利用這個功能可以構建兩個相同的資料庫,一個用來測試,一個用來正式使用。
執行環境:可以在SQLPLUS.EXE或者DOS(命令行)中執行,
DOS中可以執行時由於 在oracle 8i 中 安裝目錄ora81BIN被設置為全局路徑,
該目錄下有EXP.EXE與IMP.EXE文件被用來執行導入導出。
oracle用java編寫,SQLPLUS.EXE、EXP.EXE、IMP.EXE這兩個文件有可能是被包裝後的類文件。
SQLPLUS.EXE調用EXP.EXE、IMP.EXE所包裹的類,完成導入導出功能。
②數據導出:
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 來實現。

③數據的導入
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)

基本上上面的導入導出夠用了。不少情況要先是將表徹底刪除,然後導入。

注意:
操作者要有足夠的許可權,許可權不夠它會提示。
資料庫時可以連上的。可以用tnsping TEST 來獲得資料庫TEST能否連上

⑨ oracle怎樣sql文件導入資料庫中

 導出
導出具體的分為:導出表,導出方案,導出資料庫三種方式。
導出使用exp命令來完成的,該命令常用的選項有:
userid: 用於指定執行導出操作的用戶名,口令,連接字元串
tables: 用於指定執行導出操作的表
owner: 用於指定執行導出操作的方案
full=y: 用於指定執行導出操作的資料庫
inctype: 用於指定執行導出操作的增量類型
rows: 用於指定執行導出操作是否要導出表中的數據
file: 用於指定導出文件名
Oracle 筆記
23

 導出表
1.導出自己的表
exp userid=scott/tiger@myoral tables=(emp,dept) file=d:\e1.dmp
2.導出其它方案的表
如果用戶要導出其它方案的表,則需要dba的許可權或是exp_full_database的許可權,比如system就可以導出scott的表
E:\oracle\ora92\bin>exp userid=system/manager@myoral tables=(scott.emp) file=d:\e2.emp
特別說明:在導入和導出的時候,要到oracle目錄的bin目錄下。
3. 導出表的結構
exp userid=scott/tiger@accp tables=(emp) file=d:\e3.dmp rows=n
4. 使用直接導出方式
exp userid=scott/tiger@accp tables=(emp) file=d:\e4.dmp direct=y
這種方式比默認的常規方式速度要快,當數據量大時,可以考慮使用這樣的方法。
這時需要資料庫的字元集要與客戶端字元集完全一致,否則會報錯...
 導出方案
導出方案是指使用export工具導出一個方案或是多個方案中的所有對象(表,索引,約束...)和數據。並存放到文件中。
1. 導出自己的方案
exp userid=scott/tiger@myorcl owner=scott file=d:\scott.dmp
2. 導出其它方案
如果用戶要導出其它方案,則需要dba的許可權或是exp_full_database的許可權,比如system用戶就可以導出任何方案
exp userid=system/manager@myorcl owner=(system,scott) file=d:\system.dmp
 導出資料庫
導出資料庫是指利用export導出所有資料庫中的對象及數據,要求該用戶具有dba的許可權或者是exp_full_database許可權
增量備份(好處是第一次備份後,第二次備份就快很多了)
exp userid=system/manager@myorcl full=y inctype=complete file=d:\all.dmp
導入
 介紹
導入就是使用工具import將文件中的對象和數據導入到資料庫中,但是導入要使用的文件必須是export所導出的文件。與導
出相似,導入也分為導入表,導入方案,導入資料庫三種方式。
imp常用的選項有
userid: 用於指定執行導入操作的用戶名,口令,連接字元串
tables: 用於指定執行導入操作的表
formuser: 用於指定源用戶
touser: 用於指定目標用戶
file: 用於指定導入文件名
full=y: 用於指定執行導入整個文件
inctype: 用於指定執行導入操作的增量類型
rows: 指定是否要導入錶行(數據)
ignore: 如果表存在,則只導入數據
 導入表
1. 導入自己的表
imp userid=scott/tiger@myorcl tables=(emp) file=d:\xx.dmp
2. 導入表到其它用戶
要求該用戶具有dba的許可權,或是imp_full_database
imp userid=system/tiger@myorcl tables=(emp) file=d:\xx.dmp touser=scott
3. 導入表的結構
Oracle 筆記
24

只導入表的結構而不導入數據
imp userid=scott/tiger@myorcl tables=(emp) file=d:\xx.dmp rows=n
4. 導入數據
如果對象(如比表)已經存在可以只導入表的數據
imp userid=scott/tiger@myorcl tables=(emp) file=d:\xx.dmp ignore=y
 導入方案
導入方案是指使用import工具將文件中的對象和數據導入到一個或是多個方案中。如果要導入其它方案,要求該用戶具有dba
的許可權,或者imp_full_database
1. 導入自身的方案
imp userid=scott/tiger file=d:\xxx.dmp
2. 導入其它方案
要求該用戶具有dba的許可權
imp userid=system/manager file=d:\xxx.dmp fromuser=system touser=scott
 導入資料庫
在默認情況下,當導入資料庫時,會導入所有對象結構和數據,案例如下:
imp userid=system/manager full=y file=d:\xxx.dmp

⑩ 怎麼把sql文件導入oracle中

你如果用SQLloader導外部數據:
1、你的SQL文件應該是指數據文件,可以是用分隔符或者定長區別欄位的數據;
2、你必須先在ORACLE中創建你要導入的目標表chinaMap;
3、你在控制文件中必須定義好chinaMap和導入數據文件欄位對於的chinaMap欄位,數據文件欄位順序必須和你在控制文件中定義chinaMap欄位順序一致。
4、SQLloader和資料庫的鏈接是走sqlnet定義的服務名的,只要你sqlplus可以訪問資料庫就可以。

熱點內容
cvr網路存儲 發布:2025-01-24 17:24:52 瀏覽:415
腿套壓縮襪 發布:2025-01-24 17:05:16 瀏覽:458
電腦如何將安卓軟體卸載干凈 發布:2025-01-24 17:03:06 瀏覽:489
hello密碼怎麼破解 發布:2025-01-24 17:03:06 瀏覽:73
pspfifa無緩存 發布:2025-01-24 16:45:13 瀏覽:165
androidhandler機制 發布:2025-01-24 16:41:10 瀏覽:936
安卓系統如何下載aov 發布:2025-01-24 16:29:53 瀏覽:573
iptables允許ip訪問 發布:2025-01-24 16:19:58 瀏覽:932
安卓80如何識別存儲卡許可權 發布:2025-01-24 16:19:54 瀏覽:232
存儲介質價格 發布:2025-01-24 16:19:18 瀏覽:151