使用 Python 连接 Oracle 数据库
![使用 Python 连接 Oracle 数据库](/img/Python/feature-image---python-connect-to-oracle-database.webp)
Oracle 是一种高级关系数据库管理系统。将数据库添加到你开发的软件中以将大量信息保存在一起非常有用。
本文介绍了如何将 Oracle 数据库与 Python 编程语言的 cx_Oracle
库连接起来。
使用 Python 连接 Oracle 数据库
你必须首先安装 cx-Oracle
库,以便在 Python 编写的程序中连接到 Oracle 数据库。如果你是 Linux,请使用 pip install cx-Oracle
命令。
使用 Windows,使用 py -m pip install cx-Oracle
命令。
在开始对数据库执行操作之前,你必须与 Oracle 建立连接。这个连接是通过 connect()
函数建立的。
将所需的用户名、密码、主机和端口信息作为参数提供给函数。在所有操作完成后,使用 close()
函数关闭连接。
在下面的示例中,在 localhost 的端口 1521 上运行的 Oracle 数据库连接到用户名为 admin
和密码 password
的用户。操作完成后,使用 close()
函数关闭连接。
import cx_Oracle
connection = cx_Oracle.connect("admin/password@localhost:1521")
connection.close()
使用 Python 执行 Oracle 查询
建立连接后,使用 cursor()
函数能够执行 SQL 查询。在此函数之后,你可以使用 execute()
方法执行单个查询。
如果要使用多个绑定变量执行查询,请使用 executemany()
函数。使用 commit()
函数将你执行的查询反映到数据库中。
在下面的示例中,建立连接后,创建了 users
表,并使用 execute()
方法将名为 user
的值添加到表中。完成所有操作后,使用 close()
函数关闭连接。
import cx_Oracle
connection = cx_Oracle.connect("admin/password@localhost:1521")
cursor = connection.cursor()
cursor.execute("create table users(id integer primary key, username varchar2(20))")
cursor.execute("insert into users values(1,'user')")
connection.commit()
cursor.close()
connection.close()
使用 Python 从 Oracle 数据库中检索数据
使用 fetchone()
方法从结果集的顶部获取单行。如果要获取结果集中的所有行,可以使用 fetchall()
函数。
你可以使用 fetchmany(number)
函数根据传入的参数获取有限数量的行。
users
表中的所有值都是使用以下示例中的 fetchall()
方法获取的。
import cx_Oracle
connection = cx_Oracle.connect("admin/password@localhost:1521")
cursor = connection.cursor()
cursor.execute("select * from users")
rows = cursor.fetchall()
print(rows)
cursor.close()
connection.close()
Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.
LinkedIn