MySQL插入字符串,带有python插入作为单个字符

时间:2019-02-03 13:44:52

标签: python mysql insert

我正在尝试使用python进行简单的插入

mydb = mysql.connector.connect(
  host="localhost",
  user="**",
  passwd="**"
)

mycursor = mydb.cursor()

sql = "INSERT INTO sponge_cakes.links (`url`) VALUES (%s)"
val = ("test1")

mycursor.executemany(sql, val)

mydb.commit()

这种工作方式,但它会逐字符插入字符串(为每个字符创建一个新条目)

如何获取整个字符串,使其看起来像这样

id  | link
1   | test1

代替

id  | link
1   | t
2   | e
...

2 个答案:

答案 0 :(得分:0)

mycursor = mydb.cursor()

sql =“ INSERT INTO sponge_cakes.links(url)值(%s)”

val =(“ Dora”)

mycursor.execute(sql,val)

mydb.commit()#进行更改

print(mycursor.rowcount,“已插入记录”。)

尝试!。

答案 1 :(得分:0)

问题是您正在使用mycursor.executemany(sql, val),这意味着要运行具有多个值的同一SQL语句。

看起来"test1"只是一个单词,但是一个单词也可以视为一系列字符,这就是executemany对其的解释。

将其更改为mycursor.execute(sql, val),并且可以使用单个值按预期工作。