zoukankan      html  css  js  c++  java
  • 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位的。

  • 相关阅读:
    使用js获取表单元素的值
    分页问题
    空值转换问题
    MySQL数据库操作基础
    二叉树DFS遍历递归和非递归做法
    BFS经典算法
    stack & queue及经典例题
    Recursion & Binary search
    Leetcode之SpiralMatrix(I,II)
    Leetcode之贪心算法
  • 原文地址:https://www.cnblogs.com/siyun/p/12517847.html
Copyright © 2011-2022 走看看