• QSqlDatabase: QPSQL driver not loaded PyQt5 找不到postgreSQL驱动


        最近使用PyQt5 SQL 连接PostgreSQL执行以下代码,发现读取不到驱动,折腾了2天,测试了网上许多方法,但是没有我想要的效果。

    到目前已经解决了,所以大概总结一下过程。

    import sys
    from PyQt5.QtWidgets import  QApplication
    from PyQt5.QtSql import QSqlDatabase, QSqlTableModel, QSqlRecord
    
    
    def openDatabase():
        db = QSqlDatabase.addDatabase('QPSQL')
        db.setHostName("localhost")  
        db.setDatabaseName("postgres")
        db.setUserName("postgres")
        db.setPassword("1234")
        print( db.open())
    
    if  __name__ == "__main__":
        app = QApplication(sys.argv)    
        openDatabase()
        sys.exit(app.exec_())
    

      错误如下:

    Python 版本 3.7 

    SQL版本 PostgreSQL 11

    PyQt5版本

    Qt5 Version Number is: 5.13.0
    PyQt5 Version is: 5.13.0
    Sip Version is: 5.0.0

    解决方案:

    添加数据库的路径到系统变量Path,然后重新电脑!

    如:

    D:PostgreSQL11lib
    D:PostgreSQL11include
    D:PostgreSQL11in

    已解决:

     

     总结:

        刚开始我参照网上MYSQL的方式叫libpq.dll 放到QT5的相关文件夹中,但是没有成功。后来怀疑是数据库和Python 的32位与64位不兼容导致,

    于是我重装了一个64位的数据库。但是还是提示没有驱动。直到添加路径到系统变量后才可以。最后我又安装了32位的数据库也成功连上了,也就

    是说64位是兼容32位的。

  • 相关阅读:
    批量修改mp3文件播放速度
    尝试了一下alsa录音播放的编程。
    最快速获取天气的方法
    乒乓Buffer
    GCC编译选项和环境变量
    Linux发行版本
    memcpy 和 memmove
    自动定位android ndk的路径
    记一下,安装和使用Ubuntu过程中遇到的问题
    Android API 和Android 版本对照
  • 原文地址:https://www.cnblogs.com/siyun/p/12517847.html
Copyright © 2020-2023  润新知