demoshop

demo, trying to be the best_

有些時機我們需要在新增後立刻把新增資料的pk值去作其他應用,平常我們可能會使用再去搜尋最後或最大的pk值,這樣子雖然看不出來有啥不妥,但是還有另一種算是比較正統的作法,我們來看看吧

:前面的步驟全部省略,因為那不是我們的重點。

◆先來改一下您的Inster語句,請在原本的語句最後加上下方指令

;SELECT @PK_New = @@IDENTITY




◆新增完畢後,按一下重新整理參數後對新出現的PK_New參數按一下滑鼠左鍵,然後按右邊的顯示進接屬性


◆然後將Direction改為Output 再把Type改為Int32

修改前 修改後



◆然後在SqlDataSource的Inserted事件內利用以下code抓到新增的pk值

string aa = e.Command.Parameters["@PK_New"].Value.ToString();

♥小提醒:或許您宣告ViewState["newPK"]會比較好用@@

回應討論