【问题标题】:Python insert tuple into mysql table [duplicate]Python将元组插入mysql表[重复]
【发布时间】:2022-11-21 04:30:04
【问题描述】:

我试图将这个元组插入到 mysql 表中。

元组的提取物:

('2022-06-29 04:50:00', 'var1', 'var2', 'value'), ('2022-06-29 10:58:00', 'var1', 'var2', 'value'), ('2022-06-29 10:59:00', 'var1', 'var2', 'value'), ('2022-06-29 11:01:00', 'var1', 'var2', 'value'),...

这是我的代码:

    import MySQLdb
    
    connexion = MySQLdb.connect(host="127.0.0.1", user="myuser", password="mypass", database="mydb")
    cursor = connexion.cursor()
    table = mytablename
    
    cursor.execute("""insert ignore into " + table  + "(collection_date, var1, var2, value) values ('%s', '%s', '%s', '%s')""".format(",".join(str(i) for i in tuples)))
    connexion.commit()

但是我得到了这个错误:

MySQLdb._exceptions.ProgrammingError: (1064, 'You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near \'" + table  + "(collection_date, var1, var2, value) values (\'%s\', \'%s\', \'%s\', \'\' at line 1')

非常感谢您的帮助,

BR,

【问题讨论】:

    标签: python mysql tuples


    【解决方案1】:

    尝试这个

    
    tuples = ('2022-06-29 04:50:00', 'var1', 'var2', 'value'), ('2022-06-29 10:58:00', 'var1', 'var2', 'value'), ('2022-06-29 10:59:00', 'var1', 'var2', 'value'), ('2022-06-29 11:01:00', 'var1', 'var2', 'value')
    
    print("""insert ignore into " + table  + "(collection_date, var1, var2, value) values """ + ",".join(str(i) for i in tuples))
    

    【讨论】:

      【解决方案2】:

      你在这里忘记了一些"into " 和这里的 "(collection_date 所以你有 into " + table + "(collection_date 而不是 into your_table_name(collection_date

      最后,格式不起作用,您应该连接您的连接

      我让你检查

      tuples = ('2022-06-29 04:50:00', 'var1', 'var2', 'value'), ('2022-06-29 10:58:00', 'var1', 'var2', 'value'), ('2022-06-29 10:59:00', 'var1', 'var2', 'value'), ('2022-06-29 11:01:00', 'var1', 'var2', 'value')
      table = "mytablename"
      
      print("""insert ignore into """ + table  + """(collection_date, var1, var2, value) values """ +  ",".join(str(i) for i in tuples))
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-12-05
        • 1970-01-01
        • 1970-01-01
        • 2013-10-24
        • 1970-01-01
        • 2016-03-13
        • 2018-02-04
        相关资源
        最近更新 更多