0
我正在創建一個以uuids作爲主鍵的sql文件。下面是我創建的表定義看起來像使用pgcrypto擴展使用uuids生成sql文件並將這些id進一步轉換爲postgres9.5
CREATE EXTENSION pgcrypto;
CREATE TABLE snw.contacts(
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
name TEXT,
email TEXT
);
現在我在使用這個表中添加一條記錄
INSERT INTO snw.contacts (name,email) VALUES('Dr Nic Williams','drnic');
postgres=# select * from snw.contacts;
id | name | email
--------------------------------------+-----------------+-------
7c627ee0-ac94-40ee-b39d-071299a55c13 | Dr Nic Williams | drnic
現在在同一文件中走在前面我想在一箇中插入一行的表看起來像
CREATE TABLE snw.address(
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
street TEXT
contact UUID
);
其中聯繫UUID引用snw.contacts表中的ID。 ?我如何獲取這是在第一次插入產生的UUID,並在snw.address表使用它的另一嵌件事情是:
INSERT INTO snw.address(street,contact) values('ABC', (select id from snw.contacts where email='drnic'));
我可以用where子句我使用這個腳本生成一些測試數據,所以我知道電子郵件將用於獲取id。
爲什麼'SQL-server'標籤? –
我刪除了顯然無關的'sql-server'標籤 –