如何使用python在mysql中插入列表作为列?

9wbgstp7  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(388)

所以基本上我有这个清单:

L1 = ['hel-lo', 'world123', 'bye', 'python']

我想在mysql表中插入这个列表,如下所示:

+-------------------------+
|          words          |
+-------------------------+
| hel-lo                  |
| world123                |
| bye                     |
| python                  |
+-------------------------+

实际上,我的列表由大约1000个元素组成。我尝试了很多我在stackoverflow上发现的东西,但是没有任何效果(似乎元素正试图以这种格式“['string']”插入。
我上次尝试的解决方案:

values = [list([item]) for item in L1]
cursor.executemany(u"INSERT INTO `table`(`data`) VALUES %s", values)

返回以下错误:

mysql.connector.errors.ProgrammingError: 1064 (42000): 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 ''hel-lo')' at line 1

欢迎咨询!

cgh8pdjw

cgh8pdjw1#

查询中的值列表周围缺少括号(应为空) VALUES (%s) ). 也, list([item]) 可以简化为 [item] :

L1 = ['hel-lo', 'world', 'bye', 'python']
values = [[item] for item in L1]
cursor.executemany(u"INSERT INTO `instability`(`ap_name`) VALUES (%s)", values)

相关问题