1. sql數據怎麼轉到ORACLE里
1 利用某個工具將數據導出成txt文件(裡面的內容類似 inset into table values();形式) 。 這個步驟也有講究。有兩個方案: 1) 直接從這個大表中一個id一個id的導出數據。 2)先採取 create table t_idname as select * from souce_table where id=1;的形式建立15000個id表。然後直接一個表一個表的導出數據。優點是:導出的時候速度快,目標清晰,出錯了容易處理。缺點:前期准備工作很多。得考慮磁碟空間等。 2 導出文件的處理。因為sqlserver和oracle的一些數據類型不同,一些關鍵字也不同。需要對導出文件進行處理。(如果導出工具支持的話,可以直接在導出工具中設置進行處理,兼並到第一步中去) 另外還可以在sql server里建立dblink,連oracle 然後,就在sql server方,用sql把數據轉到dblink連著的資料庫里。
2. Oracle與SQL Server如何實現表數據同步
有時由於項目開發的需要,必須將SQLServer2005中的某些表同步到Oracle資料庫中,由其他其他系統來讀取這些數據。不同資料庫類型之間的數據同步我們可以使用鏈接伺服器和SQLAgent來實現。假設我們這邊(SQLServer2005)有一個合同管理系統,其中有表contract 和contract_project是需要同步到一個MIS系統中的(Oracle9i)那麼,我們可以按照以下幾步實現資料庫的同步。
1.在Oracle中建立對應的contract 和 contract_project表,需要同步哪些欄位我們就建那些欄位到Oracle表中。
這里需要注意的是Oracle的數據類型和SQLServer的數據類型是不一樣的,那麼他們之間是什麼樣的關系拉?我們可以在SQLServer下運行:
SELECT *
FROM msdb.dbo.MSdatatype_mappings
SELECT *
FROM msdb.dbo.sysdatatypemappings
來查看SQLServer和其他資料庫系統的數據類型對應關系。第一個SQL語句是看SQL轉Oracle的類型對應,而第二個表則更詳細得顯示了各個資料庫系統的類型對應。根據第一個表和我們的SQLServer中的欄位類型我們就可以建立好Oracle表了。
SQLServer和Oracle的對應
2.建立鏈接伺服器。我們將Oracle系統作為SQLServer的鏈接伺服器加入到SQLServer中。
具體做法參見我以前的文章http://www.cnblogs.com/studyzy/archive/2006/12/08/690307.html
3.使用SQL語句通過鏈接伺服器將SQLServer數據寫入Oracle中。
比如我們建立了鏈接伺服器MIS,而Oracle中在MIS用戶下面建立了表contract_project,那麼我們的SQL語句就是:
DELETE FROM MIS..MIS.CONTRACT_PROJECT
--清空Oracle表中的數據
INSERT into MIS..MIS.CONTRACT_PROJECT--將SQLServer中的數據寫到Oracle中
SELECT contract_id,project_code,actual_money
FROM contract_project
如果報告成功,那麼我們的數據就已經寫入到Oracle中了。用
SELECT *
FROM MIS..MIS.CONTRACT_PROJECT
查看Oracle資料庫中是否已經有數據了。
4.建立SQLAgent,將以上同步SQL語句作為執行語句,每天定時同步兩次。
這樣我們的同步就完成了。
這里需要注意的是MIS..MIS.CONTRACT_PROJECT 這里必須要大寫,如果是小寫的話會造成同步失敗。
3. 有什麼好的方法實現oracle與SQLserver之間的資料庫同步
目前比較流行的技術是CDC(change data capture),能夠實現異構資料庫同步,通常是針對變化數據的同步,DDL同步比較難實現,據說有一些國內公司能做到異構資料庫同步,可以了解一下。
4. oracle 怎樣同步兩張大表數據,用sql語句實現
1、寫個觸發器,在a表中insert數據的時候同時在b表中insert。
2、寫個存儲過程,寫兩個insert語句,將數據同時insert到a表和b表中,在程序中調用存儲過程。
5. SQL SERVER2012同步Oracle數據
我理解的是,你的需求是將oracle中變化的數據同步到sqlserver中。
我提供的解決方案是使用oracle的ogg,就是goldengate來實現。
首先,這個需求是跨庫跨平台的,一般sqlserver都裝在win上,而oracle都裝在linux上(當然,也有linux版的sqlserver,oracle也能裝在win上,但是實現的方法和結果是一樣的),但是對於ogg來講無所謂,ogg的特點就是可以跨庫跨平台跨版本來同步數據。
源端是oracle,目標端是sqlserver,可以使用11版本的ogg來同步數據,該版本功能夠用,bug也相對少了,我做運維也經常用。
使用ogg的注意事項如下:
源端oracle庫的同步表必須有主鍵。
源端oracle庫必須是force logging,必須開附加日誌。
初始化數據的時候,可以使用ogg自己的initload功能,省的還得用sqlserver的同步助手,費勁。
oracle和sqlserver支持的欄位類型不要太特殊了,比如oracle的lob欄位,sqlserver的各種text欄位啥的,這些特有的欄位,ogg支持不是很好,而對於int、varchar等通用的欄位就沒問題了。
最後,希望能幫到你,但是ogg這個東西對你來說可能是新的,所以你要用的話,得先學學,有問題可以問我。
6. SQL怎麼自動與ORACLE數據的更新數據同步
SQL怎麼自動與ORACLE數據的更新數據同步
在源庫創建到目標庫的dblink
create database link branch --輸入所要創建dblink的名稱,自定義
connect to dbuser identified by 「password」 --設置連接遠程資料庫的用戶名和密碼
using '192.168.196.76/branch'; --指定目標資料庫的連接方式,可用tns名稱
在創建dblink時,要注意,有時候可能會報用戶名和密碼錯誤,但實際上我們所輸入的賬戶信息是正確的,此時就注意將密碼的大小寫按伺服器上所設置的輸入,並在賬號密碼前號加上雙引號(伺服器版本不同造成的)。
7. 如何實現將sqlserver2008上面的數據同步到oracle11g上去
只有通過SQL 語句,你可以在SQL管理器中右鍵一張表格,選擇Create到腳本,然後在Oracle中運行來創建表格。至於數據,只有使用SQl語句進行導出和導入。
8. Oracle GoldenGate 之 SQL Server -> SQL Server 初始化同步數據
1、打開ODBC數據源應用
1、配置MGR管理器進程: EDIT PARAMS MGR
2、填寫內容
3、啟動MGR管理器進程: start mgr
4、查看MGR管理器進程: info mgr
5、創建採集投遞進程: ADD EXTRACT EJWINIT, SOURCEISTABLE
6、查看創建的進程: INFO EXTRACT *, TASKS
7、編輯配置文件: EDIT PARAMS EJWINIT
8、填寫內容【注意: 1.DSN001 為上面添加ODBC數據源的名稱 , 2.修改用戶名、密碼 , 3.新增表tab、tab2並添加10條數據 】
9、啟動進程【 注意:需在配置完目標端的接收進程後在執行 】: START EXTRACT EJWINIT
10、查看運行情況 : VIEW REPORT EJWINIT
1、配置MGR管理器進程: EDIT PARAMS MGR
2、填寫內容
3、啟動MGR管理器進程: start mgr
4、查看MGR管理器進程: info mgr
5、創建接收進程: add replicat RJWINIT,specialrun
6、查看創建的進程: INFO REPLICAT *, TASKS
7、編輯配置文件: edit params RJWINIT
8、填寫內容【注意: 1.DSN001 為上面添加ODBC數據源的名稱 , 2.修改用戶名、密碼 , 3.新增表tab、tab2 】
9、啟動進程: START REPLICAT RJWINIT
10、查看運行情況 : VIEW REPORT RJWINIT