首先我們要安裝一下包:
cx_oracle-5.3.tar.gz
instantclient-basic-linux.x64-12.1.0.2.0.zip
instantclient-sdk-linux.x64-12.1.0.2.0.zip
驗證:python連線oracle的方式,這裡講述兩種:
(1)乙個字串完成
import cx_oracle
#建立和資料庫系統的連線
conn = cx_oracle.connect('c##scott/[email protected]:1521/orcl')
#獲取操作游標
cursor = conn.cursor()
#執行sql,建立乙個表
cursor.execute("""create table tb_user(id number, name varchar2(50),password varchar(50),primary key(id))""")
#關閉連線,釋放資源
cursor.close()
#執行完成,列印提示資訊
print ('completed!')
(2)分開三個字串
import cx_oracle
#建立和資料庫系統的連線
db=cx_oracle.connect('c##scott','tiger','192.168.1.200:1521/orcl')
#獲取操作游標
cursor = db.cursor()
#執行sql,建立乙個表
cursor.execute("""insert into tb_user values(1,'scott','tiger')""")
#關閉連線,釋放資源
cursor.close()
#執行完成,列印提示資訊
db.commit()
db.close()
print ('completed!')
對資料庫的操作:
#在oracle插入資料
import cx_oracleconn = cx_oracle.connect('
c##scott/[email protected]:1521/orcl')
cursor =conn.cursor()
#插入一條記錄
cursor.execute(
"""insert into tb_user values(1,'admin','password')
""");
#再插入一條資料
param=
cursor.execute(
'insert into tb_user values(:id,:n,:p)
',param);
#一次插入多條資料,引數為字典列表形式
param=[,,];
cursor.executemany(
'insert into tb_user values(:id,:n,:p)
',param);
#再一次插入多條資料
param=;
#生成5條插入資料,引數為元組列表形式
for i in range(6,11): # [6,7,8,9,10]'
user
'+str(i),'
password
'+str(i)))
#插入資料
cursor.executemany(
'insert into tb_user values(:1,:2,:3)
',param);
cursor.close();
#提交更改
conn.commit();
conn.close();
#在oracle中查詢資料
import cx_oracleconn = cx_oracle.connect('
c##scott/[email protected]:1521/orcl')
cursor =conn.cursor()
#執行查詢 語句
cursor.execute(
"""select * from tb_user
""")
#獲取一條記錄
one =cursor.fetchone()
print (
'1: id:%s,name:%s,password:%s
'%one)
#獲取兩條記錄!!!注意游標已經到了第二條
two = cursor.fetchmany(2
)print (
'2 and 3:
',two[0],two[1
])#獲取其餘記錄!!!注意游標已經到了第四條
three =cursor.fetchall();
for row in
three:
print (row) #列印所有結果
print (
'條件查詢')
cursor.prepare(
"""select * from tb_user where id <= :id
""")
cursor.execute(none,)
for row in
cursor: #相當於fetchall()
print (row)
cursor.close();
conn.close();
[python@master ora]$ python3 select_ora.py
1: id:1,name:admin,password:password
2 and 3: (2, 'admin', 'password') (3, 'admin', 'password')
(4, 'admin', 'password')
(5, 'admin', 'password')
(6, 'user6', 'password6')
(7, 'user7', 'password7')
(8, 'user8', 'password8')
(9, 'user9', 'password9')
(10, 'user10', 'password10')
條件查詢
(1, 'admin', 'password')
(2, 'admin', 'password')
(3, 'admin', 'password')
(4, 'admin', 'password')
(5, 'admin', 'password')
R for windows連線oracle資料庫
相關資料均出自r manual。只包含rodbc方法。其他oci等暫不考慮。1.安裝r軟體。2.安裝oracle。安裝目錄 d oraclexe 這個目錄下面有tnsnames.ora,listener.ora,sqlnet.ora等配置檔案,修改tnsnames.ora檔案新增需要登入的資料庫se...
Oracle檢視連線數
有時候連得上資料庫,有時候又連不上.可能是資料庫上當前的連線數目已經超過了它能夠處理的最大值.select count from v process 當前的連線數 select value from v parameter where name processes 資料庫允許的最大連線數 修改最大連...
oracle的連線數
1 查詢oracle的連線數 select count from v session 2 查詢oracle的併發連線數 select count from v session where status active 3 檢視不同使用者的連線數 select username,count userna...