首页 > 解决方案 > Pandas 在没有连接字符串的情况下连接到 Oracle Db

问题描述

我需要从 Oracle 数据库(使用 pandas)中读取数据。我正在使用 cx_oracle 库。本教程建议使用此指令创建连接:

connection = cx_Oracle.connect(username, password, connectString)

我没有连接字符串,只有主机、db_name、用户和密码。如何创建连接或如何创建连接字符串?

编辑: 我有:

标签: pythonoraclepandasconnection-stringcx-oracle

解决方案


您需要以下变量(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 变量


推荐阅读