驱动程序未加载驱动程序未加载QtSql.QSqlDatabase

问题描述

出于某些原因,我从sqlit3迁移到MysqL。我正在使用python3.7 64位和Windows 10 Qtsql.QsqlDatabase。我正在尝试下面的代码,但显示未加载驱动程序未加载驱动程序我缺少什么。我有pyqt5。我是MysqL的新手,如何在python 64位中使用MysqL

print(list(map(str,QsqlDatabase.drivers())))
['QsqlITE','QODBC','QODBC3','QPsql','QPsql7']

下面是我的示例代码

from PyQt5 import QtCore,QtGui,QtWidgets,Qtsql
from PyQt5.Qtsql import QsqlDatabase,QsqlQuery,QsqlTableModel
import MysqL.connector
import sys

queries = (
    """
CREATE TABLE IF NOT EXISTS company(
    Company_Name TEXT UNIQUE,Address TEXT,phone TEXT

)""","""
CREATE TABLE IF NOT EXISTS employees(
    employee TEXT,"""
INSERT or IGnorE into company
(Company_Name,Address,phone) VALUES ("New Company","Location","123"
)"""
)

def create_connection():
    db = Qtsql.QsqlDatabase.addDatabase("QMysqL")
    db.setHostName("localhost")
    db.setDatabaseName("data_base")
    db.setUserName("user")      # new user and tried with existing also 
    db.setPassword("password")  # new password and tried with existing also 
    
    if not db.open():
        print(db.lastError().text())
        return False
    return True

class MainWindow(QtWidgets.QMainWindow):
    def __init__(self,parent=None):
        super().__init__(parent)

        print("OKAY")

if __name__ == "__main__":
    import sys

    app = QtWidgets.QApplication(sys.argv)
    if not create_connection():
        sys.exit(-1)
    for query_str in queries:
        query = Qtsql.QsqlQuery(query_str)
        if not query.exec_():
           print(query.lastError().text())
    w = MainWindow()
    #w.show()
    sys.exit(app.exec_())

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)