python - Pandas 在没有连接字符串的情况下连接到 Oracle Db
问题描述
我需要从 Oracle 数据库(使用 pandas)中读取数据。我正在使用 cx_oracle 库。本教程建议使用此指令创建连接:
connection = cx_Oracle.connect(username, password, connectString)
我没有连接字符串,只有主机、db_name、用户和密码。如何创建连接或如何创建连接字符串?
编辑: 我有:
- 主机名
- 港口
- 服务名称(不是 SID)
- 用户和密码
解决方案
您需要以下变量(IP、端口、SID、用户名、密码)。创建游标后,您可以使用它来插入和查询数据库。
def dbquery(query_db, cred_db):
"""
This function queries the Database
"""
curs = cred_db.cursor()
curs.execute(query_db)
rows = curs.fetchall()
curs.close()
return rows
connectString= cx_Oracle.makedsn(IP, PORT, SID)
DB_CRED = cx_Oracle.connect(USERNAME, PASSWORD, connectString)
QUERY = "SELECT * FROM something WHERE blah blah"
RES = dbquery(QUERY, DB_CRED)
使用上面的代码,只需将您的查询分配给 QUERY 变量
推荐阅读
- c++ - Xcode 生成的存档文件缺少 dylibs
- asp.net-mvc - 如何为存储在数据库中的视图(CSHTML)生成并返回视图结果?
- c# - 将 XML 转换为格式化的纯文本问题
- anylogic - Anylogic:如何将人口与来源联系起来
- matlab - 在 MATLAB 中的现有绘图上叠加/绘图
- sql - 需要大量时间的生产 Hadoop 查询
- r - dplyr:同时按名称和值选择
- python-3.x - 如何使用 HTTP 请求查看原始内容?
- asp.net - 找不到类型或命名空间名称“WindowsSecureMimeContext”
- opengl - 有没有办法在 OpenGL 中检索所有生成的关于特定标识符的名称?