核心语句(这里假设表 TEST_PYTHON 只有 TEST_ID 和 TEST_NAME 两个字段):
/*
args_insert = [(1,'hello'), (2, 'python')]
:1 和 :2 分别表示所给数值列表 args中,每个元组中数值的位置
:1表示第一个位置的数值,:2表示第二个位置的数值
*/
-- SQL批量插入语句
INSERT INTO TEST_PYTHON VALUES(:1, :2)
# python 用到第三方库 cx_Oracle
orcl.executemany(stmt, params)
orcl.commit()
具体用法:
批量插入数据前,TEST_PYTHON表内容:
# -*- coding: utf-8 -*-
# @File: check_tbl.py
# @Project: test_project
# @Date: 2019/3/27 10:43
# @Author: MaiXiaochai
from orale_utils import OrclPool
def insert_demo():
# 这里实例化一个 oracle 连接(池)对象,具体实现很容易,
# 也可以简单的硬编码连接到 oracle 也可以,这里不再赘述 OrclPool 细节
orcl = OrclPool('erp')
args_insert = [(1, 'hello'), (2, 'Python')]
insert_sql = "INSERT INTO TEST_PYTHON VALUES(:1, :2)"
orcl.executemany(insert_sql, args_insert)
# commit
orcl.commit_final()
if __name__ == "__main__":
insert_demo()
插入数据后TEST_PYTHON 数据内容:
The end.