写一个sql,在as400db2数据库中,创建一个存储过程来向一张10字段表循环插入n条数据
时间: 2024-09-19 12:12:02 浏览: 50
在AS/400 DB2数据库中,创建一个存储过程来向一张表循环插入数据通常涉及到使用`DO`循环和`EXECUTE IMMEDIATE`语句来动态构造SQL插入语句。下面是一个示例,假设表名为`MY_TABLE`,有10个字段,我们将插入一系列整数,变量`n`表示要插入的数据行数:
```sql
CREATE OR REPLACE PROCEDURE INSERT_DATA(numRows INT)
BEGIN
DECLARE i INT DEFAULT 1;
DECLARE sqlText VARCHAR(800);
WHILE i <= numRows DO
SET sqlText = 'INSERT INTO MY_TABLE (field1, field2, ..., field10) VALUES (' ||
CAST(i AS CHAR) || ', ' ||
CAST(i AS CHAR) || ', ..., ' ||
CAST(i AS CHAR) || ')';
EXECUTE IMMEDIATE sqlText;
SET i = i + 1;
END WHILE;
END @INSERT_DATA;
-- 调用存储过程并传入需要插入的行数
CALL INSERT_DATA(n);
--
阅读全文