我在刪除存儲在兩個單獨的SQL服務器上的記錄時存在一個小問題。從兩個單獨的SQL數據源中刪除記錄
我正在使用與一個數據源鏈接的刪除按鈕commandfield的數據網格上的ASP.NET數據綁定控件。
有沒有辦法從同一時間從另一個數據源中刪除相同的記錄?
任何意見將不勝感激。
我在刪除存儲在兩個單獨的SQL服務器上的記錄時存在一個小問題。從兩個單獨的SQL數據源中刪除記錄
我正在使用與一個數據源鏈接的刪除按鈕commandfield的數據網格上的ASP.NET數據綁定控件。
有沒有辦法從同一時間從另一個數據源中刪除相同的記錄?
任何意見將不勝感激。
修改您的代碼以使用ObjectDataSource並在分佈式事務中的兩臺服務器上運行刪除。
您可以編寫一個管理/繼承/外觀的圖層來獲得您需要的功能嗎?......看起來像:Ladislav Mrnka打敗了我。
...我假設你沒有單獨的BOL和DAL?否則這將很簡單。運行兩個查詢的 – 2010-08-17 15:32:41
在MSSQLServer中,如果要使用SQLDataSource,正確的方法是使用「鏈接服務器」功能將服務器添加到彼此的實例。
然後生成一個存儲過程,從兩個數據庫中刪除所需的任何記錄。 將存儲過程附加到網格的刪除方法。
編輯: 我應該注意到這取決於您的SQLServer版本。但是,我認爲存儲過程是迄今爲止最可維護的方式,如果支持的話。
根據您的特定版本的SQL有可能是一種方法來做到這一點(我不知道一個,但它可能存在)。從.NET代碼中使用MSSQL的最基本方法是針對兩個不同的SQL連接運行兩次查詢(因爲您提到數據位於兩個不同的服務器上,不僅僅是DB中的不同表或者甚至跨同一服務器上的兩個DB )。
使該進程非原子化,併爲導致數據不一致的失敗打開更多潛在問題。 – Matthew 2010-08-20 23:30:50
非常感謝您的意見。 – user423016 2010-08-18 07:36:40