「已注销」 2022-03-31 10:20 采纳率: 100%
浏览 134
已结题

PyQt5中数据库的连接


from PyQt5.QtSql import QSqlQuery, QSqlDatabase

# 一个QSqlDatabase实例就代表了一个连接
# 通过静态方法addDatabase()构造一个QSqlDatabase来构造一个连接,调用这个方法时可以指定driver或driver type和连接名。
db = QSqlDatabase.addDatabase("QMYSQL")  # 建立一个MYSQL数据库
db.setHostName('localhost')  # 设置数据库所在的主机名称
db.setDatabaseName('test.db')  # 设置要连接的数据库名称
db.setUserName('root')
db.setPassword('root')

if db.open():
    print('1')
else:
    print('0')

db.close()

# output: 0
Question:

请问这里为什么没有打开数据库? 也就是为什么没有输出1呢?

  • 写回答

2条回答 默认 最新

  • 北京生信课堂 2022-03-31 14:14
    关注

    亲亲,先确认下mysql服务是否已经在启动状态,如果已启动,请尝试下面添加端口号

    db.setPort(3306)
    

    默认mysql是3306,不过在你的主机上也可能不是这个哦,请好好核对下。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月26日
  • 已采纳回答 4月18日
  • 创建了问题 3月31日