我有一種情況,通過我有一個目錄服務器A和一個相同的命名目錄服務器B.我在服務器B上使用同義詞,以便一些表實際上只是通過服務器A.使用sql server 2005同義詞表導致動態查詢生成錯誤
這樣,從ServerB.Table調用select *,實際上是透明地從ServerA.Table返回數據。這似乎工作正常,當我做選擇時,也工作正常,如果我手tsql腳本插入,但是,當我使用ADO.NET適配器它給了我一個錯誤說:「動態SQL生成不支持一個SelectCommand不會返回任何基表信息。「這通常意味着在返回數據時沒有可用的主鍵信息。有沒有辦法解決? (與我最好能夠繼續使用同義詞,因爲它不是一個真正的選擇排除它的使用)。
我知道有一個始終是主鍵的「ID」列,如有必要,我可以根據需要將主鍵信息硬編碼回ado.net適配器/數據表。
謝謝!
是的,不幸的是我希望有一種方法可以做到這一點,而無需手工製作所有更新命令:/或者最糟糕的是,只需在桌面上設置主鍵。 – mrwayne 2010-01-05 00:17:19