mysql語句insert后取到返回的主鍵id


Q:   有時候做類似接口里的數據訂正,需要取到insert語句返回的id主鍵,在程序里通過對象返回好取,但是寫sql怎么取到呢?

A:  用select @@identity得到上一次插入記錄時自動產生的ID

說明:

  1. 若插入了多個行,則會產生多個標識值,@@IDENTITY 返回最后產生的標識值

 

舉個栗子:

CREATE TABLE a (
id int(255) NOT NULL auto_increment,
name VARCHAR(20) NOT null,
PRIMARY KEY (id)
);
DELETE FROM a;
SELECT * FROM a;
INSERT INTO a (name) VALUES('a');
INSERT INTO a (name) VALUES('b');
SELECT @@IDENTITY; --  這里會顯示出name='b'的記錄id
SET @lastId=(SELECT @@IDENTITY); -- 把@lastId賦值為2
INSERT INTO a (name) VALUES(@lastId);-- name=2
SELECT * FROM a;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM