cx_Oracle
安装
1,注意cx_Oracle的版本以及位数,Oracleclient的版本以及位数,python的版本以及位数:
本次操作:Python3.6.5 64位,cx-Oracle5.3 64位,Oracleclientinstantclient_12_2 64位
2,需要将Oracleclient中的oci文件拷贝到python安装路径下的Lib\site-packages文件目录下。
3,需要配置Oracleclient的环境变量:
新建ORACLE_HOME,值为D:\Oracle_Client
新建TNS_ADMIN,值:D:\Oracle_Client
path,添加:D:\Oracle_Client
简单使用
1,连接
import cx_Oracle
conn = cx_Oracle.connect('用户名/密码@主机地址:端口/服务名')
2,断开连接:
conn.close()
3,建立游标
cursor_conn = conn.cursor()
4,关闭游标
cursor_conn.close()
5,insert 插入
插入单条:
sql = 'SELECT * FROM CMS_MERCHANT WHERE merchant_id=141530000001'
sql_insert_one = 'INSERT INTO CX_ORACLE (ID,NAME,GENDER) VALUES (:ID,:NAME,:GENDER)'
insert_result = curs.execute(sql_insert_one,['1','Yellow','man'])
插入多条:
# insert_result = curs.executemany(sql_insert_one,list_one)
cx_Oracle.DatabaseError: ORA-01036: illegal variable name/number
6,delete 删除
sql_delete = "DELETE FROM CX_ORACLE t where t.ID = :ID"
7,update 更新
sql_update = 'UPDATE cx_oracle t SET t.name=:name WHERE t.id=:id'
8,select 查询
sql_select = 'SELECT * FROM cx_oracle t WHERE t.id=:id or t.name=:name'
result = curs.execute(sql_select,['4','Tester_Yellow'])
result.fetchone() 获取查询集中的一行,查询结果为空返回null
result.fetchall() 获取所有的查询结果,查询结果为空返回null
写在最后:希望各位前辈补充下 cx_Oracle 库的其他细节,谢谢!