繁体   English   中英

在创建ID的同一条语句中使用auto_incremented ID

[英]Use auto_incremented ID in same statement the ID is being created

我不确定如何正确制定标题。 我将在此进行详细说明,使其易于理解。

我有一个带有auto_incremented ID(主键)的表。 在同一个表中,我有一个guid列。 该GUID将是一个URL。 因此,GUID通常类似于http://www.example.com/path/path/ID

我的问题是:因为ID是在INSERT上自动生成的,并且我没有手动分配它,所以我事先不知道ID是什么。 如果我依赖ID,该如何在插入语句中分配guid值?

我目前的解决方案是用两个语句来完成此操作:

INSERT INTO table (ID, guid) 
VALUES (null, null);

我现在将看到这样的一行:

-------------
| ID | GUID |
-------------
| 1  | null |
-------------

然后,我可以在另一条语句中用如下语句更新此行;

UPDATE  table SET  guid = ID WHERE ID = 1;

(可能不合语法,但您明白了)

有什么办法可以一口气做到吗? 在哪里可以根据auto_incremented ID设置GUID? 所以会是这样的

INSERT INTO table (ID, guid) 
VALUES (null, ID);

我希望我的问题是可以理解的! 我将澄清是否仍然不清楚。 我不知道任何更好的方式来解释我的问题。

如果PK是自动生成的,则在插入查询中不需要它。

insert into table
(guid)
values
(your guid)

当然,您必须自己生成GUID,并且有很多方法可以做到这一点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM