Python 使用cx_Oracle连接到Oracle数据库在Windows上提供DPI-1047 将熊猫作为pd导入 进口炼金术 engine=sqlalchemy.create_引擎('oracle://XXX:XXX@XXX:XXX/?服务(名称=XXX') sql='从XXX中选择*其中rownum

Python 使用cx_Oracle连接到Oracle数据库在Windows上提供DPI-1047 将熊猫作为pd导入 进口炼金术 engine=sqlalchemy.create_引擎('oracle://XXX:XXX@XXX:XXX/?服务(名称=XXX') sql='从XXX中选择*其中rownum,python,oracle,oracle11g,python-3.6,cx-oracle,Python,Oracle,Oracle11g,Python 3.6,Cx Oracle,DatabaseError:(cx_Oracle.DatabaseError)DPI-1047:64位Oracle 无法加载客户端库:“C:\oracle\11.2.0\bin\oci.dll不可用 正确的架构”。看见 求救 我试图使用Python连接到Oracle数据库,但收到了上述错误。我知道: 我已经设置了查看正确位置的路径-它显示在错误中 Python是64位的 bin文件夹位置包含32位(ociw32.dll)和64位(oci.dll)文件 然而,这个错误仍然告诉我架构是错误的 这方面

DatabaseError:(cx_Oracle.DatabaseError)DPI-1047:64位Oracle 无法加载客户端库:“C:\oracle\11.2.0\bin\oci.dll不可用 正确的架构”。看见 求救

我试图使用Python连接到Oracle数据库,但收到了上述错误。我知道:

  • 我已经设置了查看正确位置的路径-它显示在错误中
  • Python是64位的
  • bin文件夹位置包含32位(ociw32.dll)和64位(oci.dll)文件
  • 然而,这个错误仍然告诉我架构是错误的


    这方面的任何帮助都将是巨大的-我不知道问题可能在哪里

    错误消息中提到的文件是32位DLL,而不是64位DLL——至少假设检查这些内容的逻辑是正确的!代码正在使用此处提到的imagehelp API:。还有一些其他方法可以验证DLL是32位还是64位。检查您的路径,并确保64位Oracle客户端安装在路径中的第一位。下载并解压64位Oracle即时客户端,以便快速轻松地进行测试

    import pandas as pd
    import sqlalchemy
    
    engine = sqlalchemy.create_engine('oracle://XXX:XXX@XXX:XXX/?service_name=XXX')
    
    sql = 'select * from XXX where rownum < 10'
    df = pd.read_sql(sql,con=engine)