没掉发的程序员 2023-11-24 20:18 采纳率: 50%
浏览 5

pyside6使用qsql批量execBatch写入数据报错

pyside6使用qsql批量execBatch写入数据报错
No data supplied for parameters in prepared statement QMYSQL: Unable to execute statement


    sql =f"INSERT IGNORE INTO `{table_name}` (`url`, `creat_time`) VALUES (:url, :creat_time)"
    #sql =f"INSERT IGNORE INTO {table_name} (url, creat_time) VALUES (?,?)"
    query = QSqlQuery(db)
    query.prepare(sql)
    for url in urls:
        query.addBindValue(url['url'])
        query.addBindValue(url['creat_time'])

    if query.execBatch():
        print("Batch insert successful")
    else:
        print("Batch insert failed:", query.lastError().text())

只能使用pyside默认的数据库,因为其他模块都写好了。。用多了才知道默认数据库真是坑

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-11-24 22:50
    关注

    【以下回答由 GPT 生成】

    我能帮助解决pyside6使用qsql批量execBatch写入数据时出现的错误。

    首先,我们需要了解您的数据库结构以及要插入的数据。请您提供以下信息: 1. 您使用的数据库类型和版本(例如MySQL,SQLite等)。 2. 数据库中要插入的表的结构,包括表名和列名。 3. 要插入的数据的样例,包括要插入的行数以及每一行的具体数值。

    在了解这些信息之后,我们可以通过以下步骤来解决该问题:

    1. 导入必要的模块:
    from PySide6.QtSql import QSqlDatabase, QSqlQuery
    
    1. 连接到数据库:
    db = QSqlDatabase.addDatabase("QSQLITE")  # 或者根据您使用的数据库类型来设置
    db.setDatabaseName("path/to/your/database")  # 替换为您的数据库路径
    if not db.open():
        print("无法连接到数据库")
    
    1. 设置批量插入的参数:
    query = QSqlQuery()
    query.prepare("INSERT INTO your_table (column1, column2, ...) VALUES (:value1, :value2, ...)")  # 根据表结构进行替换
    query.bindValue(":value1", value1)  # 根据要插入的具体数值进行替换
    query.bindValue(":value2", value2)
    # 绑定更多的参数...
    
    1. 组织数据并执行批量插入:
    query.execBatch()
    if query.lastError().isValid():
        print("插入数据时出现错误:", query.lastError().text())
        db.rollback()
    else:
        db.commit()
    

    请提供以上问题的详细信息,以便我可以提供更准确的解决方案。


    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 创建了问题 11月24日

悬赏问题

  • ¥15 mmocr的训练错误,结果全为0
  • ¥15 python的qt5界面
  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀