[英]postgresql - use just created identity value to return newly inserted row
使用SQL Server我可以寫下面的語句......
create table Person(
id int identity(1,1),
name varchar(50)
)
insert into Person(name) values ('John')
select * from Person where id = scope_identity()
在Postgres我可以這樣做:
CREATE TABLE public.Person
(
id serial primary key,
name character varying(10) NOT NULL
)
INSERT INTO Person(name) VALUES ('Smith', 'John') RETURNING id;
我如何編寫一個等效語句,就像我在SQL示例中所做的那樣,不返回id,而是剛剛插入的整行?
正如@ cur4so所述,或者說
INSERT INTO Person(name) VALUES ('Smith', 'John') RETURNING *;
INSERT INTO Person (name) VALUES ('Smith John');
select * from Person where id = currval('person_id_seq');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.