当前位置: 首页 > 知识库问答 >
问题:

如何在Python中编写合适的MySQL Insert语句?

魏誉
2023-03-14

我试图从Python向MySQL表中插入两列数据。我想我的Insert语句是真的。但我仍然得到1064错误代码。

这是针对MySQL server版本8.0.12和Python 3.7的。我尝试改变插入动态变量的不同方法。

#alter is the data value read from serial port

sql="select * from stds"
cur.execute(sql)
records=cur.fetchall()
if cur.rowcount>0:
   print('Number of rows - ',cur.rowcount)
else:
   print('No data in table')
for row in records:
   print(row)
if row[1]==alter:
    print("Student exists : ",row[1])
    date = datetime.datetime.now()
    print(type(date))
    ins = (alter, date)
    sql = "Insert into 'attendance' ('stdid', 'dt') VALUES (%s,%s)"
    cur.execute(sql, ins)
    cnn.commit()
    print('Sucessfully Stored the Record')
    #success(alter)
    break
else:
    print("Student doesn't exist")

programmingerror:1064(42000):您的SQL语法中有一个错误;请查看与您的MySQL服务器版本对应的手册,查找在第1行的“考勤”('stdid'、'dt')值('fe0070e83d5b'、'2019-08-01 09:09:06.162304'附近使用的正确语法

我希望这些读标记值被成功插入。

共有1个答案

公宜春
2023-03-14

MySQL(以及大多数其他风格的SQL)中的标识符(例如列名和表名)不使用单引号。在MySQL中,它们要么不加引号,要么加双引号,或者加反勾。尝试此版本:

sql = "INSERT INTO attendance (stdid, dt) VALUES (%s, %s)"
ins = (alter, date)
cur.execute(sql, ins)
cnn.commit()
 类似资料:
  • 我有两个问题。 ①当useState初始值真假时,if语句如何适应下面? 比如说。。 ②当if语句为true和false时,如何使setGoodBotton从React钩子和if语句适应下面? 例如…(这不是工作)

  • 问题内容: 在python中,我们使用反斜杠表示当前语句继续到下一行 例如, 或者简单地说, 可以用Go语言做到这一点吗?谢谢 问题答案: 当然可以,只需将运算符放在最后,例如: 另请注意,不可能在操作员之前中断换行。以下代码 无效 : 该规则在此处和规范中进行了描述。

  • 问题内容: 假设我有一个文件。我怎么写“你好” TAB“ alex”? 问题答案: 这是代码: 字符串的内部是水平制表符的转义序列。

  • 我想写一个包含我们想在项目中使用的函数的Python文件。我们正在为Instagram开发一个硒网刮擦机器人。现在我们在脚本中编写所有的函数,但是我们想制作一个“函数”文件,我们将导入并用于我们的脚本。但问题是,当我想使用像

  • 问题内容: 我正在使用MySQL,并且想在SQL中执行一种三元语句,例如: 结果将类似于: 如何做到这一点? 问题答案:

  • 问题内容: 如何在MySQL查询中编写IF ELSE语句? 像这样: 然后在我的数组中,我应该能够做到这一点: 问题答案: 您可能要使用表达式。 他们看起来像这样: