簡體   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