Noob SQL在同一查询中插入和选择

时间:2012-03-28 17:03:51

标签: sql postgresql select insert

我正在尝试研究如何执行单个SQL查询,该查询插入新行,然后将插入显示为确认。

有没有在一个SQL查询中执行此操作而不使用预准备语句或将其放入java?

这两个问题是分开的:

我正在使用Postgres数据库和PGadmin来运行查询。

INSERT INTO Log (ID, LogType, Status, Priority, LoggedTime, UserID, ProblemID) 
VALUES (2, 'test', 'test', 3, '2012-03-1
4 10:30',  2, 1);

SELECT * FROM Log WHERE ID = 2;

编辑:每次都插入ID,不在序列中

2 个答案:

答案 0 :(得分:2)

如果ID是序列,则可以在序列上选择currval()。如果没有,您可以在INSERT上使用RETURNING子句。见http://www.postgresql.org/docs/current/static/sql-insert.html

答案 1 :(得分:1)

使用RETURNING子句:

INSERT INTO Log 
  (ID, LogType, Status, Priority, LoggedTime, UserID, ProblemID) 
VALUES 
  (2, 'test', 'test', 3, '2012-03-14 10:30',  2, 1)
RETURNING *;