CX Oracle是一個針對Python的Oracle數據庫驅動程序,是Oracle的官方支持庫。它提供了一個Python編程直接訪問Oracle數據庫的方法,使得開發人員可以使用Python來實現對Oracle數據庫的連接、查詢和操作等。
我們來看一下使用CX Oracle如何連接數據庫、創建表、插入數據和查詢數據。
#連接數據庫 import cx_Oracle dsn = cx_Oracle.makedsn('localhost', '1521', service_name='orcl') conn = cx_Oracle.connect('username', 'password', dsn=dsn) #創建表 cursor = conn.cursor() cursor.execute('''CREATE TABLE EMPLOYEES ( EMPLOYEE_ID NUMBER, FIRST_NAME VARCHAR2(20), LAST_NAME VARCHAR2(20), EMAIL VARCHAR2(50), PHONE_NUMBER VARCHAR2(20), HIRE_DATE DATE, JOB_ID VARCHAR2(20), SALARY NUMBER, COMMISSION_PCT NUMBER, MANAGER_ID NUMBER, DEPARTMENT_ID NUMBER)''') conn.commit() #插入數據 cursor.execute("INSERT INTO EMPLOYEES (EMPLOYEE_ID, FIRST_NAME, LAST_NAME, EMAIL, PHONE_NUMBER, HIRE_DATE, JOB_ID, SALARY, COMMISSION_PCT, MANAGER_ID, DEPARTMENT_ID) VALUES (1, 'John', 'Doe', 'johndoe@example.com', '1234567890', TO_DATE('2022-06-15', 'YYYY-MM-DD'), 'developer', 8000, 0.1, NULL, 2)") cursor.execute("INSERT INTO EMPLOYEES (EMPLOYEE_ID, FIRST_NAME, LAST_NAME, EMAIL, PHONE_NUMBER, HIRE_DATE, JOB_ID, SALARY, COMMISSION_PCT, MANAGER_ID, DEPARTMENT_ID) VALUES (2, 'Jane', 'Doe', 'janedoe@example.com', '0987654321', TO_DATE('2022-06-15', 'YYYY-MM-DD'), 'developer', 8000, 0.1, 1, 2)") conn.commit() #查詢數據 cursor.execute("SELECT FIRST_NAME, LAST_NAME, EMAIL, PHONE_NUMBER, JOB_ID, SALARY FROM EMPLOYEES") for row in cursor: print(row) cursor.close() conn.close()
上述代碼中,我們在Oracle數據庫中創建了一個名為EMPLOYEES的表,該表包含11個列:EMPLOYEE_ID、FIRST_NAME、LAST_NAME、EMAIL、PHONE_NUMBER、HIRE_DATE、JOB_ID、SALARY、COMMISSION_PCT、MANAGER_ID和DEPARTMENT_ID。我們還將兩個員工的信息插入了EMPLOYEES表中,最后查詢了EMPLOYEES表中的部分信息并打印出來。這就是使用CX Oracle實現對Oracle數據庫的連接、創建表、插入數據和查詢數據的基本流程。
除了以上操作外,CX Oracle還有許多其他實用的功能,例如處理大型數據集、支持事務和游標、存儲過程、LOBs和BLOBs等。這使得使用CX Oracle進行操作和處理Oracle數據庫變得更加靈活、高效和方便。
總之,CX Oracle是一個獨立、高效和強大的Oracle數據庫驅動程序,它為Python開發人員提供了可靠和靈活的訪問Oracle數據庫的方法,極大地提高了Python編程語言在與Oracle數據庫交互方面的實用性。