3
我們遇到了以下問題:用戶在Access 2003中的大型表上進行排序並將鏈接表映射到SQL Server 2008 R2數據庫鎖定整個表格以防止他人進行任何寫入。對帶有鏈接表的SQL Server 2008數據庫中的表進行排序以解決SQL 2008問題
這是預期的行爲還是有辦法在Access或SQL 2008中更改此類操作的鎖定功能?
我們遇到了以下問題:用戶在Access 2003中的大型表上進行排序並將鏈接表映射到SQL Server 2008 R2數據庫鎖定整個表格以防止他人進行任何寫入。對帶有鏈接表的SQL Server 2008數據庫中的表進行排序以解決SQL 2008問題
這是預期的行爲還是有辦法在Access或SQL 2008中更改此類操作的鎖定功能?
創建一個「快照」使用表(只讀)查詢:
SELECT * FROM LinkedTableName
您可以在查詢屬性窗口中選擇「快照」。
然後指示用戶改爲打開查詢並對其進行排序,這應該像鏈接表的普通視圖一樣解決問題,Access必須讀取整個表才能使用原生DAO格式的索引,使用「快照」忽略這一點,只是轉儲數據視圖。
注意:由於存在這些非常錯誤,我不推薦使用鏈接表與數據庫之外的數據庫,所以最好使用ADO連接到SQL服務器,因爲所有這些工作都是在服務器端完成的,應該避免鎖定問題。
或者,你可以創建一個「通過」查詢您的SQL服務器,這將允許在沒有鎖,因爲這也做服務器端的工作排序:)
感謝偉大的信息。我們沒有機會看到這是否能解決我們的問題,但看起來不錯。 – 2012-02-27 19:44:38