我有一個問題,請幫助我。從一個數據庫讀取數據並將其存儲在其他數據庫中
我有一個包含10個表的本地數據庫。我的工作是從每個表中讀取數據(在某些情況下從每個表中選擇數據),然後將這些數據存儲在遠程數據庫中。遠程數據庫具有相同的10個本地數據庫中的表。簡單的說,我必須將數據從本地數據庫移植到遠程數據庫。
我有一個問題,請幫助我。從一個數據庫讀取數據並將其存儲在其他數據庫中
我有一個包含10個表的本地數據庫。我的工作是從每個表中讀取數據(在某些情況下從每個表中選擇數據),然後將這些數據存儲在遠程數據庫中。遠程數據庫具有相同的10個本地數據庫中的表。簡單的說,我必須將數據從本地數據庫移植到遠程數據庫。
製作存儲過程,執行從本地數據庫到遠程數據庫的複製。從你的java程序調用存儲過程。這隻有在您的數據庫實現支持從不同實現中鏈接到遠程數據庫時纔有可能。
從JAVA編程這似乎是一個可怕的想法,除非沒有其他方式。
您可以使用ETL(提取/傳輸和加載)。勺子是一個免費的工具,您可以創建純粹使用SQL執行此類任務的轉換。
http://wiki.pentaho.com/display/EAI/Spoon+User+Guide
http://rpbouman.blogspot.com.au/2006/06/pentaho-data-integration-kettle-turns.html
我必須這樣做以編程的方式。 –
非常基本的一個簡單的方法來實現這一目標是使用jdbc
首先,你需要連接到每個數據庫中,你需要一個jdbc driver
你必須處理每個數據庫系統,jdbc驅動程序是一個實現jdbc API的庫,它由每個數據庫供應商的數據庫系統。
請參閱this link,其中顯示瞭如何建立與數據庫的連接。
你已經建立後Connection您可以創建一個Statement檢索和更新數據。檢索的數據返回ResultSet。
This link顯示你如何做到這一點。
總之,你需要做以下步驟
Connection
源數據庫Statement
併發送select
查詢源數據庫Resultset
和保存的一些POJOResultSet
的Statement
和源達的Connection
tabaseConnection
到目標數據庫Statement
併發送update/insert into
查詢到目標數據庫ResultSet
的Statement
和Connection
!「使用結果集檢索reulsts並保存在某個POJO的集合中」您知道任何執行此操作的api,或者我必須遍歷結果集並將該數據放入pojo中? –
@WaqasAli在這種情況下,您可能需要查看[Java持久性API](http://docs.oracle.com/javaee/6/tutorial/doc/bnbpz.html)。然後您將需要處理[實體](http://docs.oracle.com/javaee/6/tutorial/doc/bnbqa.html)和[EntityMangers](http://docs.oracle.com/javaee) /6/tutorial/doc/bnbqw.html)。對於'JPA'來說,所有的工作都像我在上面描述的那樣在引擎蓋下完成。 – A4L
@WaqasAli你也可以使用hibernate進行此操作。 – Freak
如果我在Oracle交談,您可以創建在目的地的數據庫鏈接DB說source_link
http://docs.oracle.com/cd/B28359_01/server.111/b28310/ds_concepts002.htm
然後DB
插入連接到目標分爲A(字段1,字段2, ...)從A @ source_link選擇field1,feild2 ....其中
與Java無關,但也是一種有效的方式
首先,您使用什麼數據庫?... – Aquillo
對於本地數據庫我使用火鳥和遠程數據庫我使用Java中使用MySQL的 –