Table test
id - int, primary key, auto_incriment
name - varchar(100)
INSERT INTO test
(ID, Name)
VALUES
('$ID', '$Name');
请告诉我,当我们进行插入时,请在一个查询中真正返回ID
吗?
答案 0 :(得分:0)
由于ID是自动递增的,因此不要在查询中指定它,只需执行
即可INSERT INTO test
(Name)
VALUES
('$Name');
(注意,如果这是来自PHP,请务必注意SQL注入问题!)
如果你指定一个ID,它将覆盖MySQL的正常操作(这在某些情况下很有用,但在这种情况下不太可能)。
您可以使用LAST_INSERT_ID()
返回上次插入的ID。 (注意必须首先插入列,不能调用它然后插入该值)
答案 1 :(得分:0)
如同@MichaelBerkowski所说,你不能在一个查询中返回ID
。
返回ID
下一步:
INSERT INTO test
(ID, Name)
VALUES
('$ID', '$Name');
SELECT LAST_INSERT_ID();
关于您LAST_INSERT_ID();
的信息可以阅读 here