oracle多条数据插入
时间: 2024-10-13 13:05:32 浏览: 36
java代码oracle数据库批量插入
5星 · 资源好评率100%
Oracle数据库中插入多条数据通常使用`BULK INSERT`命令或者通过PL/SQL循环结构来批量操作。以下是两种常见的方法:
1. **BULK INSERT**:
如果你需要一次性插入大量预存在的数据文件(CSV、TXT或其他格式),可以使用`BULK INSERT`。例如:
```sql
BULK INSERT table_name
FROM '/path/to/your/file.csv'
(FIELDS TERMINATED BY ',' ACTION ON NULLS MATCH)
```
这里`table_name`是要插入的目标表名,`'/path/to/your/file.csv'`是数据文件路径。ACTION ON NULLS MATCH指示如何处理NULL值。
2. **PL/SQL LOOP**:
如果数据需要动态生成或来自其他查询结果,可以编写PL/SQL块来进行循环插入:
```sql
DECLARE
TYPE tab_type IS TABLE OF record_type INDEX BY PLS_INTEGER;
l_tab tab_type;
BEGIN
-- 初始化数据或填充表格
FOR i IN 1..num_records LOOP
l_tab(i) := your_data_row(i);
END LOOP;
-- 批量插入
FOR r IN l_tab.first .. l_tab.last LOOP
INSERT INTO table_name VALUES (l_tab(r).column1, ..., l_tab(r).columnN);
END LOOP;
EXCEPTION
WHEN OTHERS THEN
-- 捕获并处理错误
DBMS_OUTPUT.PUT_LINE('Error in inserting row ' || SQLCODE);
END LOOP;
END;
```
`record_type`是你自定义的数据类型,`num_records`是数据的数量。
阅读全文