Yan*_*hon 5 java sql oracle jdbc
在 Oracle 中,可以通过执行类似的查询插入多行
INSERT ALL
INTO mytable (column1, column2, column3) VALUES ('val1.1', 'val1.2', 'val1.3')
INTO mytable (column1, column2, column3) VALUES ('val2.1', 'val2.2', 'val2.3')
INTO mytable (column1, column2, column3) VALUES ('val3.1', 'val3.2', 'val3.3')
SELECT * FROM dual;
Run Code Online (Sandbox Code Playgroud)
并使用准备好的语句,执行像这样的单个插入
BEGIN INSERT
INTO mytable (column1, column2, column3) VALUES (null, 'val1.2', 'val1.3')
RETURNING column1 INTO ?; END;
Run Code Online (Sandbox Code Playgroud)
将导致返回column1的值(假设在插入之前有一个触发器为其分配一个值)。
如果可能的话,有没有办法将两者结合起来?意思是,插入多个值,同时仍然column1通过单个查询返回所有值(结果集)?