我有几个用于测试数据的 SQL 语句。有一堆插入语句、一堆选择语句和一堆删除语句。
是否可以将这些插入语句包装在我可以从一行代码运行的东西中?然后,通过一个语句,我可以说,执行插入。或者,执行删除语句。
这是我所拥有的一个例子
insert into [table] values (val1, val2, val3);
insert into [table] values (val1, val2, val3);
insert into [table] values (val1, val2, val3);
insert into [table] values (val1, val2, val3);
insert into [table] values (val1, val2, val3);
Run Code Online (Sandbox Code Playgroud)
这是我想象的样子,但因为我不知道这是否可能,所以这可能看起来很傻。
execute sqlChunk();
这将运行下面的所有内容。
sqlChunk(){
insert into [table] values (val1, val2, val3);
insert into [table] values (val1, val2, val3);
insert into [table] values (val1, val2, val3);
insert into [table] values (val1, val2, val3);
insert into [table] values (val1, val2, val3);
}
Run Code Online (Sandbox Code Playgroud)
请注意,我只是将语句放在括号中,因为对我来说,它会是这样的(如果可能的话,再说一遍)。我在 DB2 中运行它。但也想知道你是否可以在 oracle sql 中做到这一点。
小智 5
您可以创建一个存储过程、一个函数或一个作业来封装您的查询,sqlChunk 就像这样。
CREATE PROCEDURE sqlChuck
AS
insert into [table] values (val1, val2, val3);
insert into [table] values (val1, val2, val3);
insert into [table] values (val1, val2, val3);
insert into [table] values (val1, val2, val3);
insert into [table] values (val1, val2, val3);
Run Code Online (Sandbox Code Playgroud)
你会这样称呼它:
EXEC sqlChuck
Run Code Online (Sandbox Code Playgroud)
据我所知,它也可以在 oracle 中完成。