使用cx_Oracle在Python中实现插入操作
发布时间:2024-01-02 17:10:27
在Python中使用cx_Oracle插入操作需要先安装cx_Oracle模块,并提供Oracle数据库的连接信息。
安装cx_Oracle模块可以使用pip命令来进行安装:
pip install cx_Oracle
然后,需要提供Oracle数据库的连接信息,包括数据库的主机名、端口号、服务名、用户名和密码。可以使用以下代码来建立与Oracle数据库的连接:
import cx_Oracle # 连接信息 hostname = "localhost" # 数据库主机名 port = 1521 # 数据库端口号 service_name = "ORCL" # 数据库服务名 username = "scott" # 数据库用户名 password = "tiger" # 数据库密码 # 建立连接 dsn = cx_Oracle.makedsn(hostname, port, service_name=service_name) connection = cx_Oracle.connect(username, password, dsn) # 创建游标 cursor = connection.cursor()
在成功建立连接并创建游标后,可以使用插入操作将数据插入到Oracle数据库中。下面是一个简单的例子,插入一条学生的记录到学生表中:
# 插入操作
sql = "INSERT INTO students (id, name, age) VALUES (:id, :name, :age)"
data = {'id': 1, 'name': 'Alice', 'age': 18}
cursor.execute(sql, data)
# 提交事务
connection.commit()
# 关闭游标和连接
cursor.close()
connection.close()
可以通过将插入操作放入循环中,一次插入多条记录。下面是一个插入100条学生记录的例子:
# 插入100条学生记录
for i in range(1, 101):
data = {'id': i, 'name': 'Student' + str(i), 'age': 18 + i}
cursor.execute(sql, data)
# 提交事务
connection.commit()
# 关闭游标和连接
cursor.close()
connection.close()
在插入操作中,可以使用参数绑定的方式来防止SQL注入攻击。需要注意的是,参数名需要以冒号(:)开头,并且参数值需要通过字典或元组的方式进行传递。
在插入完成后,需要使用commit()方法来提交事务,以确保插入操作的结果被持久化到Oracle数据库中。
最后,记得在插入操作完成后关闭游标和连接,释放资源。
在实际使用过程中,可以根据需求来定制插入操作的逻辑和数据,达到插入数据到Oracle数据库的目的。
