Python Oracle 插入多行

Python Oracle 插入多行

Python Oracle 插入多行

1. 简介

Python 中使用 Oracle 数据库进行数据操作时,有时会需要一次性插入多行数据。本文将详细介绍如何使用 Python 中的 cx_Oracle 模块插入多行数据到 Oracle 数据库中。

2. 准备工作

在开始之前,您需要确保以下条件已满足:

  • 已安装 Python 3.x 版本。
  • 已安装 cx_Oracle 模块,可通过 pip install cx_Oracle 命令进行安装。
  • 已安装并成功配置好 Oracle 客户端和驱动程序。

3. 连接到 Oracle 数据库

首先,我们需要使用 cx_Oracle 模块连接到 Oracle 数据库。下面是一个示例代码:

import cx_Oracle

# 使用 cx_Oracle 模块连接到 Oracle 数据库
conn = cx_Oracle.connect('username/password@localhost:port/service_name')
Python

4. 创建表

接下来,我们需要创建一个用于存储数据的表。以下是一个示例代码:

import cx_Oracle

# 使用 cx_Oracle 模块连接到 Oracle 数据库
conn = cx_Oracle.connect('username/password@localhost:port/service_name')

# 创建表
cursor = conn.cursor()
cursor.execute("""
    CREATE TABLE my_table (
        id NUMBER,
        name VARCHAR2(100)
    )
""")
cursor.close()
Python

5. 插入单行数据

在插入多行数据之前,我们先来看一下如何插入单行数据。以下是一个示例代码:

import cx_Oracle

# 使用 cx_Oracle 模块连接到 Oracle 数据库
conn = cx_Oracle.connect('username/password@localhost:port/service_name')

# 插入单行数据
cursor = conn.cursor()
cursor.execute("INSERT INTO my_table (id, name) VALUES (1, 'John')")
cursor.close()
Python

6. 插入多行数据

在插入多行数据时,我们可以使用 cx_Oracle 模块的 executemany() 方法。以下是一个示例代码:

import cx_Oracle

# 使用 cx_Oracle 模块连接到 Oracle 数据库
conn = cx_Oracle.connect('username/password@localhost:port/service_name')

# 插入多行数据
data = [(2, 'Tom'), (3, 'Alice'), (4, 'Bob')]

cursor = conn.cursor()
cursor.executemany("INSERT INTO my_table (id, name) VALUES (:1, :2)", data)
cursor.close()
Python

在上述示例代码中,我们首先定义了一个包含多行数据的列表 data,并使用 executemany() 方法将数据一次性插入到 my_table 表中。

7. 提交事务

在插入数据完成后,我们需要提交事务以使操作生效。以下是一个示例代码:

import cx_Oracle

# 使用 cx_Oracle 模块连接到 Oracle 数据库
conn = cx_Oracle.connect('username/password@localhost:port/service_name')

# 插入多行数据
data = [(2, 'Tom'), (3, 'Alice'), (4, 'Bob')]

cursor = conn.cursor()
cursor.executemany("INSERT INTO my_table (id, name) VALUES (:1, :2)", data)
conn.commit()  # 提交事务
cursor.close()
Python

在上述示例代码中,我们使用 conn.commit() 方法提交事务。

8. 关闭连接

最后,我们需要关闭与 Oracle 数据库的连接。以下是一个示例代码:

import cx_Oracle

# 使用 cx_Oracle 模块连接到 Oracle 数据库
conn = cx_Oracle.connect('username/password@localhost:port/service_name')

# 插入多行数据
data = [(2, 'Tom'), (3, 'Alice'), (4, 'Bob')]

cursor = conn.cursor()
cursor.executemany("INSERT INTO my_table (id, name) VALUES (:1, :2)", data)
conn.commit()  # 提交事务
cursor.close()

# 关闭连接
conn.close()
Python

在上述示例代码中,我们使用 conn.close() 方法关闭与 Oracle 数据库的连接。

9. 完整示例代码

下面是一个完整的示例代码,演示了如何使用 cx_Oracle 插入多行数据到 Oracle 数据库:

import cx_Oracle

# 使用 cx_Oracle 模块连接到 Oracle 数据库
conn = cx_Oracle.connect('username/password@localhost:port/service_name')

# 创建表
cursor = conn.cursor()
cursor.execute("""
    CREATE TABLE my_table (
        id NUMBER,
        name VARCHAR2(100)
    )
""")
cursor.close()

# 插入多行数据
data = [(1, 'John'), (2, 'Tom'), (3, 'Alice'), (4, 'Bob')]

cursor = conn.cursor()
cursor.executemany("INSERT INTO my_table (id, name) VALUES (:1, :2)", data)
conn.commit()  # 提交事务
cursor.close()

# 关闭连接
conn.close()
Python

执行以上示例代码后,将会创建一个名为 my_table 的表,并插入包含多行数据的列表 data。

10. 总结

本文介绍了如何使用 Python 中的 cx_Oracle 模块插入多行数据到 Oracle 数据库中。我们通过连接到数据库、创建表、插入单行数据、插入多行数据、提交事务和关闭连接等步骤,完成了插入多行数据的操作。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册