問:“怎樣從DB2圖表中刪除N個行?”
答:“首先,你需要更新你的"關系型"數據庫管理系統的知識. 在圖表中沒有"頂端"或"底端"的N個行的概念. 但對結果集有頂端或底端的概念. 你可以用FETCH FIRST N ROWS ONLY子句來得到開始的N個行,但是得到底端的N個行是更困難的問題.為實現這點,你需要用可滾動的指針.可滾動的指針允許你在不用讀取/得到所有的行前在結果集裡前後移動。我建議你閱讀DB2 SQL參考手冊和DB2應用程序手冊中可滾動的指針的內容(所有的DB2手冊可以從網上免費下載)。基本上你應該用可滾動的指針的FETCH LAST 語句,再用FETCH PRIOR語句循環N-1次。那將給出任何結果集的“底端”的N個行”(分類或未分類的)。
如果你要從圖表裡刪除N個行。我猜想你會問如何在DELETE的WHERE條件處限制行子集的刪除,答案是否定的。你必須在同樣WHERE條件處注明FOR UPDATE OF來打開一個指針,然後你需要在循環N次的行處打開FETCH和DELETE WHERE CURRENT OF指針。當然這意味著你必須重寫一個程序。