2014-10-28 93 views
0

我正在寫一些ASP頁面以下目的。編輯兩個數據庫從不同的網站與ASP的形式相同

我有兩個相互關聯的網站。 在第一個我有一個表格,我插入一些信息。 這些信息存儲在第一個站點的數據庫中。

由於其他站點的數據庫字段與我想要編輯的表相同,有沒有辦法將數據發送到其他站點並在存儲之後將其插入第二個數據庫在第一個?

數據庫連接

Set Con = Server.CreateObject("ADODB.Connection") 
Con.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("/writable/mdb-database/mydb.mdb") 

回答

0

只要打開到第二個數據庫服務器的新連接和相同的數據插入到它。對新連接使用相同的查詢(或linq表達式等)。我不知道你如何連接到第一個,但你可以用相同的方法連接到第二個,只需更改地址。

+0

所以你告訴我,如果我做的是另Con.Open「......」我改變使用Server.Mappath(‘可寫/ MYDB.MDB’)與其他服務器解決它會正常工作?就是這麼簡單? – Jannuzzo 2014-10-28 09:57:18

+0

你能告訴我如何通過編輯你的問題連接到數據庫嗎? – 2014-10-28 10:01:24

+0

您直接連接到該文件。如果數據庫服務器正在另一臺計算機上運行,​​則使用服務器/實例名稱進行連接會更健康。如果該文件在同一臺計算機上,則可以用相同的方式連接到該文件。 – 2014-10-28 10:49:29

0

作爲一種不好的做法,您可以在插入第一個表格時添加新的觸發器,並且如果兩個數據庫不在同一臺服務器上,則鏈接服務器對象可以幫助您訪問對方。而現在,爲什麼我把它標記爲不好的做法?因爲缺乏可管理性。數據庫中的腳本不會被稱爲託管代碼,因此如果您沒有正確記錄它,它將很難被其他程序員追蹤。

該場景的最佳解決方案是逐個插入兩條記錄,並使用TRANSACTION確保數據的完整性,前提是兩個數據庫位於同一臺服務器上,或者在分佈式場景中使用DTC。

一些導遊DTC:http://msdn.microsoft.com/en-us/library/ms684146%28VS.85%29.aspx

相關問題