cloudio™

知識要用心體會 才能變成智慧

最新回應

恐怖的陷阱

幾天前不小心踩進去的陷阱

給大家看看

 

_cmd.Transaction = _tans;
_cmd.CommandText = @"
        INSERT [USER](ACCOUNT,PASSWORD,INTERNAL,ACTIVE)
        VALUES(@ACCOUNT,@PASSWORD,0,0);SELECT SCOPE_IDENTITY()";
_cmd.Parameters.AddWithValue("ACCOUNT", ACCOUNT.Text);
_cmd.Parameters.AddWithValue("@PASSWORD", PASSWORD.Text);
try {
    InsertCount = _cmd.ExecuteNonQuery();
    user_no = _cmd.ExecuteScalar().ToString();
} catch (Exception) {
    showMsg("新增個人基本資料失敗");
}

 

看出來會怎樣了嗎?

看不出來的可以在看一下這篇

SqlCommand.ExecuteScalar 方法

沒錯!

每次update我都莫名其妙新增了兩筆資料Orz真是一整個

因為我想要insert後順便抓最新一筆的資料所以這樣做...

正確的做法應該是直接用變數去接SqlCommand.ExecuteScalar()在確定不為null後轉型即可

浪費我30分鐘/美好人生

應該不會有人犯這種錯吧...

用method前還是看一下MSDN比較保險

2009/6/11 21:51| 閱讀數 : 641 | 我要推薦 | One Comment | 文章分類: ASP.NET C# 訂閱


關連文章

回應

  • cutybam 2009/6/12 上午 05:34 回覆

    # re: 恐怖的陷阱

    縮減行數是很好啦,

    但是如果順序縞錯的話, 反而難debug.

    推~

標題 *
名稱 *
Email (將不會被顯示)
Url
回應
登入後使用進階評論
Please add 2 and 6 and type the answer here: