執行StoredProcedure後,如何傳回影響總筆數的變數 |
尚未結案
|
lontan
一般會員 發表:1 回覆:1 積分:0 註冊:2005-08-18 發送簡訊給我 |
請教各位大大:
我有一支StoredProcedure程式執行後,StoredProcedure內部程式主要是SELECT跟JOIN其他資料表後所產生的資料去UPDATE到一個資料表上,資料異動一次有超過數筆,
但是我沒有在StoredProcedure程式最後去SELECT此次異動的筆數,因為資料是累加到資料表上的,若是用SELECT COUNT(*) 的話,這樣StoredProcedureru就會把前次紀錄給SELECT進來, 例如: SELECT * INTO #TEMP FROM ORDERS
就會顯示此次影響 N 個資料列 那麼我要在StoredProcedure程式裡面怎傳回" N "這個變數值到我的Delphi程式中??
我有瀏覽過文章 但是都沒找到符合我的答案 不知道用@@ROWCOUNT是不是可以達到功效.....在此先謝謝各位大大解答!!
|
timhuang
尊榮會員 發表:78 回覆:1815 積分:1608 註冊:2002-07-15 發送簡訊給我 |
|
ko
資深會員 發表:28 回覆:785 積分:444 註冊:2002-08-14 發送簡訊給我 |
|
lontan
一般會員 發表:1 回覆:1 積分:0 註冊:2005-08-18 發送簡訊給我 |
引言: Hi, 你可以利用 RowAffected 來取得最後影響的列數! 但前提是使用 TADOQuery 或使用 TQuery 來執行 stored procedure, 而不是使用 TADOStoredProc, 因為前兩者才有 RowAffected 屬性.timhuang大大您好: 只能透過TADOQuery 或使用 TQuery 來執行嗎?? 若是是用上面那兩個元件,要怎麼呼叫stored procedure...這小弟真的沒用過 昨天小弟倒是有試過@@ROWCOUNT放在stored procedure這個語法 因為我只試這個SELECT * INTO #TEMP FROM ORDERS語法去測試成功 Delphi裡面只要TADOStoredProc設定變數正確就可以接收N值了 因為UPDATE語法會牽動到資料庫,所以沒去試,但是我想應該可行的 所以就把語法丟給我組長了@@" 倒是要怎麼透過 > 發表人 - |
timhuang
尊榮會員 發表:78 回覆:1815 積分:1608 註冊:2002-07-15 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |