SQL插入數據時返回最新ID方法
SELECT LAST_INSERT_ID()。SELECT @@IDENTITY接可。但到下午那兄弟還沒搞定。因為不知道怎麼運行。。項目都是三層的。基本是寫在DBHELPER中。原因是其寫入了:
cmd.ExecuteNonQuery(); ---這是執行非查詢語句返回受影響的行數。
其實是應該寫入:
cmd.ExecuteScalar();
返回首行首列。可能是因為helper裡面注釋為:
/// <summary>
/// 執行一條計算查詢結果語句,返回查詢結果(object)。
/// </summary>
/// <param name="SQLString">計算查詢結果語句</param>
/// <returns>查詢結果(object)</returns>
LAST_INSERT_ID() mysql教程_insert_id 獲取insert數據的主鍵值自動編號那麼來分析一下它們的區別吧
mysql_insert_id ()是直接獲取當前session的insert_id,而LAST_INSERT_ID()是SQL函數,需要通過執行SQL來獲得,如:SELECT LAST_INSERT_ID();顯然這兩個效果是一樣的,但執行一次SQL要耗費很多資源,不如直接通過mysql_insert_id()獲得內存中的值快得多