私は少し戸惑いがあります。私はPyQt/Pythonを使ってMySqlデータベースを照会する基本的なアプリケーションを作成しています。私の知る限り、コードがでテーブルを表示するようになっている承知しているようbuiltins.AttributeError: 'str'オブジェクトに 'toString'属性がありません
ID,product_name,item_number,price
1,"AKG C14",564564564,32
2,"Samsung ",454564545,99
3,"Shure ",564687784,80
:ここ
import sys
from PyQt4 import QtCore, QtGui, QtSql
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.QtSql import *
app = QApplication(sys.argv)
w = QTextBrowser()
# DB type, host, user, password...
db = QSqlDatabase.addDatabase("QMYSQL");
db.setHostName("localhost")
db.setDatabaseName("microphones")
db.setUserName("root")
db.setPassword("")
ok = db.open()
# True if connected
if ok:
w.insertHtml('Connected to MySQL<br />')
else:
w.insertHtml('ERROR connecting to MySQL<br />')
# do a query "on" a DB connection
query = QSqlQuery(db)
if query.exec_("SHOW TABLES"):
w.insertHtml('<br />')
while query.next():
table = query.value(0).toString()
w.insertHtml('%s<br />' % table)
w.insertHtml('<br />')
w.insertHtml('TOTAL %s TABLES' % query.size())
w.show()
sys.exit(app.exec_())
は、データベース内のテーブル「ebay_microphones」「マイク」です:ここでは、コードですデータベースが、私はエラーを取得しています
builtins.AttributeError: 'str' object has no attribute 'toString'
私は正しい方向に私を指摘することができます、なぜ私はこのエラーが表示されますか? おかげ
'テーブル= query.valueは(0).toString()'この行はする必要があります - 'テーブル= STR(query.value(0) ) ' –
うわー、速い応答に感謝、それは働いた!元の記事を書いた人が以前のバージョンの古い構文を使っていたとか、間違っていると思いますか? – neilH
これは古い構文ではありません。ちょうど間違っている。 –