十分钟学会 cxoracle 库的用法(cx_oracle库用法)
十分钟学会 cx_oracle 库的用法
cx_oracle 库是 Python 语言中操作 Oracle 数据库的常用库之一,它实现了一系列 Oracle 数据库的操作,包括连接数据库、执行 SQL 语句、获取查询数据等。本文将介绍如何在十分钟内学会使用 cx_oracle 库。
第一步:安装 cx_oracle 库
安装 cx_oracle 库需要先安装 Oracle Instant Client,可以前往 Oracle 官网下载相应版本的客户端安装程序。安装完成后,使用以下命令在命令行界面中安装 cx_oracle 库:
pip install cx_oracle
如果在 Windows 操作系统中安装 cx_oracle 库出现问题,可以从 cx_oracle 的官网下载对应版本的 whl 文件进行安装。
第二步:连接 Oracle 数据库
需要使用 cx_oracle.connect() 函数连接 Oracle 数据库,该函数需要传递用户名、密码、数据库地址等参数。以下是连接 Oracle 数据库的样例代码:
import cx_oracle
# 填写数据库连接信息dsn = cx_oracle.makedsn("localhost", "1521", "orcl")
username = "username"password = "password"
# 连接数据库connection = cx_oracle.connect(username, password, dsn)
以上代码中,“localhost”表示本地主机地址,“1521”表示数据库端口,“orcl”表示数据库实例名,用户名和密码是在 Oracle 数据库中新建用户时设置的账号和密码。
第三步:执行 SQL 语句
连接成功后,就可以执行 SQL 语句进行数据操作。cx_oracle 库中的 cursor() 函数可以创建执行 SQL 语句的游标,然后使用 execute() 函数执行 SQL 语句,举例如下:
# 创建游标
cursor = connection.cursor()
# 执行查询语句cursor.execute("SELECT * FROM users")
# 获取查询结果result = cursor.fetchall()
print(result)
# 关闭游标cursor.close()
以上代码中,execute() 函数的参数是一条 SQL 语句,这里执行的是查询语句,使用 fetchall() 函数可以获取查询的结果。需要注意的是,查询结果是一个 tuple 类型的列表。
除了查询语句,还可以执行插入、更新、删除等操作,例如:
# 插入数据
cursor.execute("INSERT INTO users (id, name, age) VALUES (1, 'Tom', 18)")connection.commit() # 提交事务
# 更新数据cursor.execute("UPDATE users SET age = 20 WHERE id = 1")
connection.commit()
# 删除数据cursor.execute("DELETE FROM users WHERE id = 1")
connection.commit()
需要注意的是,对于插入、更新、删除等写操作,需要将语句执行结果提交到数据库。
第四步:关闭数据库连接
使用 cx_oracle 库中的 close() 函数关闭数据库连接,代码如下:
# 关闭连接
connection.close()
完整样例代码如下:
import cx_oracle
# 填写数据库连接信息dsn = cx_oracle.makedsn("localhost", "1521", "orcl")
username = "username"password = "password"
# 连接数据库connection = cx_oracle.connect(username, password, dsn)
# 创建游标cursor = connection.cursor()
# 执行查询语句cursor.execute("SELECT * FROM users")
# 获取查询结果result = cursor.fetchall()
print(result)
# 插入数据cursor.execute("INSERT INTO users (id, name, age) VALUES (1, 'Tom', 18)")
connection.commit()
# 更新数据cursor.execute("UPDATE users SET age = 20 WHERE id = 1")
connection.commit()
# 删除数据cursor.execute("DELETE FROM users WHERE id = 1")
connection.commit()
# 关闭游标cursor.close()
# 关闭连接connection.close()
以上就是使用 cx_oracle 库操作 Oracle 数据库的基本方法,通过以上简单几步,便可快速上手。