根據所選主鍵從數據庫獲取記錄的最佳方式是什麼?根據使用複合主鍵的多個記錄查詢結果
我能夠從gridview中獲取所選(檢查)行的主鍵,現在需要從數據庫中檢索這些選定複合主鍵的相應記錄。
如果這些行僅使用一個主鍵,則會更容易。我可以直接連接主鍵(逗號分隔)並在WHERE IN子句中使用它。但行使用三個主鍵(INT,INT,字符串)
我想使用選擇加入的(一個選擇每組主鍵,然後再加入所有的選擇),但我不知道這是做到這一點的最佳方式。
處理這個問題的最佳方法是什麼?
在此先感謝。
尼基
[更新] - 無法回覆個人意見,我可能沒有足夠權限的還,所以在這裏更新後予以明確。
下面是我在做什麼的例子:
數據從一個數據庫表來與複合鍵:
TABLE1
KeyCol1 INT (Primary Key),
KeyCol2 STRING (Primary Key),
KeyCol3 INT (Primary Key),
Col4 Decimal,
Col5 STRING,
Other columns . . .
PAGE 1 GRIDVIEW 1:
Sel |KeyCol1 |KeyCol2 |KeyCol3 |Col4 |Col5 |Other Columns . . .
[ ] |100 |CODE1 |01 |10.05 |Description 1 |. . .
[/] |100 |CODE1 |02 | 5.03 |Description 2 |. . .
[ ] |100 |CODE2 |01 |12.45 |Description 4 |. . .
[/] |102 |CODE1 |01 |21.50 |Description 1 |. . .
[/] |102 |CODE2 |01 | 9.10 |Description 5 |. . .
[/] |102 |CODE3 |03 | 7.15 |Description 1 |. . .
。 。 。然後點擊頁面1上的一個按鈕(例如「取消記錄」)後,我需要獲取這些行,以顯示到另一個頁面,例如此:
PAGE 2 WITH GRIDVIEW 2
KeyCol1 |KeyCol2 |KeyCol3 |Col4 |Other Colums |Reason
100 |CODE1 |02 | 5.03 |. . . |_______
102 |CODE1 |01 |21.50 |. . . |_______
102 |CODE2 |01 | 9.10 |. . . |_______
102 |CODE3 |03 | 7.15 |. . . |_______
(其中原因列是一個文本框)
你是否正在使用3個字段從一個具有複合主鍵的表中進行選擇?如果沒有,發佈相關表格的模式定義 –
我不確定您是否使用了正確的術語......您是否*根據視圖中的選定列生成* sql語句並且僅*串聯*串在一起? –
@馬丁威爾遜N西,我已經更新了這個問題,如果這個問題解決了。 –