使用pandas中的oracle数据库的工具
pandas-oracle的Python项目详细描述
此软件包包括以下方法:
- 在Oracle数据库上运行以字符串形式传入的指定查询,并将结果返回到Pandas数据帧。
- 执行没有返回数据的命令。
- 将pandas数据帧的内容插入到oracle数据库表中。
安装
pip install pandas_oracle
概述
示例用法:
import pandas_oracle.tools as pt query1 = "select id, name from students where name like '%Oscar%'" query2 = "select class, avg(age) from students group by class" ## opening conn conn = pt.open_connection("config.yml") ## passing the conn object to the query_to_df df1 = pt.query_to_df(query, conn, 10000) ## passing the conn object to the query_to_df , without to open again df2 = pt.query_to_df(query2, conn, 10) ## close connection pt.close_connection(conn)
返回:
ID NAME 0 3298272 Meyer,Oscar 1 2304928 Wilde,Oscar 2 7654321 Grouch,Oscar . ... ... 128 2234879 De La Hoya,Oscar 129 9872322 Peterson,Oscar 130 9082394 Sanchez,Oscar [131 rows x 2 columns]
配置文件示例:
database: username: "OGROUCH" password: "SECR3TPASSWORD" sysdba: "n" host: > (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP) (HOST = servername.myschool.edu) (PORT = 1521) ) (CONNECT_DATA = (SERVER = DEDICATED) (SID = dbname) ) )
如果不希望将密码存储在配置文件中,可以 省略那一行。如果配置文件中不存在密码,则 将在运行时提示输入。
您可以选择是否连接sysdba角色。如果山药 文件不包含“sysdba”属性,它将像正常的 用户。
从版本2.1.0开始,添加了_cc方法(query_to_df_cc, 执行“抄送”,并插入“多抄送”)。这些方法会传递一个配置文件 而不是连接对象,并负责打开和关闭 为您接通。