gpt4 book ai didi

Python:QSqlDatabase:QMYSQL 驱动程序未加载

转载 作者:行者123 更新时间:2023-11-29 13:55:27 26 4
gpt4 key购买 nike

我正在运行来自 http://www.python.org/getit/ 的 python 2.7.3 (python-2.7.3.amd64.msi)

我使用的安装程序来自:http://www.lfd.uci.edu/~gohlke/pythonlibs/

  • PyQt-Py2.7-x64-gpl-4.9.6-1.exe
  • PySide-1.1.2.win-amd64-py2.7.exe
  • MySQL-python-1.2.4.win-amd64-py2.7.exe

我还尝试了来自以下位置的 pyqt 和 pyside 二进制文件:

我在以下 python 代码中收到错误“QSqlDatabase:QMYSQL 驱动程序未加载”。我最好的猜测是上面的 pyside 和 pyqt 二进制安装程序没有构建 qt 以包含 QMYSQL?任何人都可以确认这一点,并且更重要的是,指导我使用构建了 QMYSQL 驱动程序的安装程序吗?我不准备尝试自己编译 qt 库。如有任何帮助,我们将不胜感激。

import sys

from showrec import * # import qtdesigner ui (converted using pyside-uic)

from PySide import QtGui, QtSql

#===================================================================
#
#===================================================================

def createConnection():

db = QtSql.QSqlDatabase.addDatabase('QMYSQL')

db.setHostName('localhost')
db.setDatabaseName('mydatabase')
db.setUserName('userid')
db.setPassword('password')
db.open()
print (db.lastError().text())
return True

#===================================================================
#
#===================================================================

class MyForm(QtGui.QDialog):

def __init__(self, parent=None):

#super(MyForm, self).__init__(parent) # I suspect this is needed?

QtGui.QWidget.__init__(self,parent)
self.ui = Ui_Dialog()
self.ui.setupUi(self)

self.model = QtSql.QSqlDatabase(self)
self.model.setTable("products")
self.model.setEditStrategy(QtSql.QSqlTableModel.OnManualSubmit)
self.model.select()
self.ui.tableView.setModel(self.model)

#===================================================================
# main
#===================================================================

if __name__ == "__main__":

app = QtGui.QApplication(sys.argv)

if not createConnection():
sys.exit(1)

myapp = MyForm()
myapp.show()

sys.exit(app.exec_())

这是 GUI 代码:

from PySide import QtCore, QtGui

class Ui_Dialog(object):
def setupUi(self, Dialog):
Dialog.setObjectName("Dialog")
Dialog.resize(400, 300)
self.tableView = QtGui.QTableView(Dialog)
self.tableView.setGeometry(QtCore.QRect(20, 20, 256, 192))
self.tableView.setObjectName("tableView")

self.retranslateUi(Dialog)
QtCore.QMetaObject.connectSlotsByName(Dialog)

def retranslateUi(self, Dialog):
Dialog.setWindowTitle(QtGui.QApplication.translate("Dialog", "Dialog", None, QtGui.QApplication.UnicodeUTF8))

最佳答案

关于PySide,官方64位Windows安装程序(从PySide主页下载)仅支持QSQLITE驱动程序。32 位安装程序支持 QSQLITE QODBC3 QODBC QPSQL7 QPSQL 驱动程序。R。

关于Python:QSqlDatabase:QMYSQL 驱动程序未加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15935892/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com