使用 Python 連線 Oracle 資料庫
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