當前位置:首頁 » 編程語言 » oracle同步sql

oracle同步sql

發布時間: 2022-05-06 16:23:08

Ⅰ 請問如何實現ORACLE與sql SERVER 2000數據同步

寫一個定時執行的程序,最好寫成windows
服務,直接定時執行從oracle中查詢,在sqlserver中更新或添加或刪除,這個執行要的時間會比較長(看oracle中的數據量和每天的變化量),所以寫成服務晚上執行好點,當然寫好後在windows中用計劃任務執行也是可以的,至於程序的復雜程度要看oracle端的數據類型和sqlserver的匹配程度了,但總體來看程序不復雜,如果要追求執行效率的話比較麻煩

Ⅱ oracle怎麼導入sql文件

  • PL/SQL登錄到資料庫,使用tools工具進行導入。使用plsql登錄到需要導入數據的資料庫。點擊工具欄上【tools】--【Import tables】

Ⅲ 如何把sql server一張表的數據實時同步到Oracle資料庫

如何把sql
server一張表的數據實時同步到oracle資料庫
1.
sqlserver伺服器上面安裝oracle客戶端,配置服務命名(假設為
test)
2.
在sqlserver伺服器上面建立鏈接伺服器,腳本如下
sql
code?
sql
code--
adding
linked
server:
exec
sp_addlinkedserver
@server
=
'test'
,
@srvproct
=
'oracle',
@provider
=
'msra',
@datasrc
=
'test'

Ⅳ 如何定時同步oracle表到sql server

1、兩台不同伺服器;
2、從oracle10g定時同步(每天凌晨2:00)到sqlserver2005;
3、處於安全性考慮,客服方不提供sqlserver2005的賬戶密碼,只需我們提供數據集;
4、雙方程序語言都為java
在這些前提下我提出了幾套方案,僅供參考:
a:如果oracle能在客戶伺服器上訪問,由oracle方提供介面給客戶伺服器實現,返回給客戶伺服器所需同步數據,並由客戶伺服器操作數據存儲到sqlserver2005中,介面代碼描述:遠程建立jdbc連接oracle(臨時帳戶),查詢oracle方提供的視圖,並訪問客戶所需數據集,打成jar包,由客戶方調用介面實現方法獲得數據。
b:如果oracle方不能被客戶伺服器訪問,則將需同步數據置入xml中,並由客服伺服器方訪問其xml(http or socket),並有oracle方提供解析機制,返回數據集。
c:通過開源資料庫同步軟體實現不同(google結果:symmetricds、opendbdiff(針對sqlserver))
前面三種方案均可實現從oracle同步到sqlserver2005,不過如果數據量較大時可能導致中途數據丟失或者同步速度較慢等情況,於是制定如下方案:
建立同步表,將客戶方所需數據表中欄位放入到同步表中,如:
用戶表:wid,userid,password
用戶同步表:wid,userid,password,no,operationtype,operationdate
可以看到同步表中多了三個欄位:no,operationtype,operationdate
no為序號,由oracle序列生成,operationtype為操作類型,0為新增,1為修改,2為刪除,operationdate為操作日期,取當前完整時間(年月日分秒)
建立用戶表觸發器,如果用戶表有操作則將客戶方所需用戶表欄位放入同步表中,如果新增將operationtype的值插入0,以此類推
在客服伺服器方,oracle方提供介面查詢同步表得到結果集,並和客服商議如何操作這些數據
這樣就可以實現哪些數據修改過就同步哪些數據,減免了雙方伺服器的壓力

Ⅳ 如何同步ORACLE和sqlserver的數據

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 這里必須要大寫,如果是小寫的話會造成同步失敗。

Ⅵ SQL怎麼自動與ORACLE數據的更新數據同步

SQL怎麼自動與ORACLE數據的更新數據同步
在源庫創建到目標庫的dblink
create database link branch --輸入所要創建dblink的名稱,自定義
connect to dbuser identified by 「password」 --設置連接遠程資料庫的用戶名和密碼
using '192.168.196.76/branch'; --指定目標資料庫的連接方式,可用tns名稱
在創建dblink時,要注意,有時候可能會報用戶名和密碼錯誤,但實際上我們所輸入的賬戶信息是正確的,此時就注意將密碼的大小寫按伺服器上所設置的輸入,並在賬號密碼前號加上雙引號(伺服器版本不同造成的)。

Ⅶ 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 這里必須要大寫,如果是小寫的話會造成同步失敗。

Ⅷ 有什麼好的方法實現oracle與SQLserver之間的資料庫同步

目前比較流行的技術是CDC(change data capture),能夠實現異構資料庫同步,通常是針對變化數據的同步,DDL同步比較難實現,據說有一些國內公司能做到異構資料庫同步,可以了解一下。

Ⅸ SQL SERVER2012同步Oracle數據

我理解的是,你的需求是將oracle中變化的數據同步到sqlserver中。

我提供的解決方案是使用oracle的ogg,就是goldengate來實現。

首先,這個需求是跨庫跨平台的,一般sqlserver都裝在win上,而oracle都裝在linux上(當然,也有linux版的sqlserver,oracle也能裝在win上,但是實現的方法和結果是一樣的),但是對於ogg來講無所謂,ogg的特點就是可以跨庫跨平台跨版本來同步數據。

源端是oracle,目標端是sqlserver,可以使用11版本的ogg來同步數據,該版本功能夠用,bug也相對少了,我做運維也經常用。

使用ogg的注意事項如下:

  1. 源端oracle庫的同步表必須有主鍵。

  2. 源端oracle庫必須是force logging,必須開附加日誌。

  3. 初始化數據的時候,可以使用ogg自己的initload功能,省的還得用sqlserver的同步助手,費勁。

  4. oracle和sqlserver支持的欄位類型不要太特殊了,比如oracle的lob欄位,sqlserver的各種text欄位啥的,這些特有的欄位,ogg支持不是很好,而對於int、varchar等通用的欄位就沒問題了。

    最後,希望能幫到你,但是ogg這個東西對你來說可能是新的,所以你要用的話,得先學學,有問題可以問我。

Ⅹ 如何將oracle表數據實時同步到sqlsever數據表中

1. SQLSERVER伺服器上面安裝oracle客戶端,配置服務命名(假設為 test)
2. 在SQLSERVER伺服器上面建立鏈接伺服器,腳本如下

SQL code?
SQL code-- Adding linked server:

exec sp_addlinkedserver @server = 'test' ,
@srvproct = 'ORACLE',
@provider = 'MSDAORA',
@datasrc = 'test'
-- Adding linked server login:
exec sp_addlinkedsrvlogin @useself='false ', @rmtsrvname = 'test',
@rmtuser = 'user', --資料庫用戶
@rmtpassword = 'password' --密碼
3. 建立一個作業,通過作業調度存儲過程,存儲過程使用類似的語句將oracle的數據插入到sqlserver表中

SQL code?
insert into sqlserver表 select * from test..oracle表名
4. 如果要球ORACLE數據是實時增加的,並且ORACLE記錄上有遞增的欄位,可以在SQLSERVER上面建立一個表記錄上次插入的id,然後下次可以從上次的ID+1開始繼續插入

SQL code?
insert into sqlserver表 select * from test..oracle表名 where id>@id
5. 防止sqlserver同步的時候oracle仍在不斷的插入,每次要取一個結束ID

SQL code?
select @endid=max(id) from test..oracle表名.

熱點內容
javappt課件 發布:2024-05-10 14:58:17 瀏覽:688
如何將hadoop編譯在windows 發布:2024-05-10 14:23:36 瀏覽:134
python和php哪個好 發布:2024-05-10 13:32:41 瀏覽:730
android長按關機 發布:2024-05-10 13:21:54 瀏覽:14
城堡模組小本的模組密碼是什麼 發布:2024-05-10 13:21:13 瀏覽:306
舊機照片傳新手機怎麼弄安卓蘋果 發布:2024-05-10 13:16:15 瀏覽:227
設置密碼英文是什麼 發布:2024-05-10 13:15:19 瀏覽:648
魅族安卓60怎麼下載光遇 發布:2024-05-10 13:10:52 瀏覽:841
硬碟存儲系統 發布:2024-05-10 12:39:51 瀏覽:244
資料庫審計系統報價 發布:2024-05-10 12:39:50 瀏覽:279