s={'项目特色': '项目特色海景房 ', '建筑面积': '建筑面积 130000 平方米' }
例如我有以上的字典,并且在数据库中都建立了相对应的列名
然后
import pymysql
for key in s.keys():
cursor.execute("insert into 澳门
(%s) values (%s)",(key,s[key]))
然后提示
pymysql.err.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 ''建筑面积') values ('建筑面积 130000 平方米')' at line 1")
1
zsz 2017-04-19 23:54:05 +08:00 via iPhone
for 循环插入了 2 条数据,一条数据写入的字段是 “项目特色”,一条数据是 “建筑面积”,你确认么?
|
2
est 2017-04-19 23:57:05 +08:00
insert into table set value="字典"
|
3
dtfm 2017-04-20 00:43:12 +08:00 via Android
insert into 后面跟的是表名啊
|
4
mhycy 2017-04-20 00:55:16 +08:00
python 连接 MySQL 没有真正的参数化查询
|
5
zhaojjxvi 2017-04-20 01:23:17 +08:00 via iPhone
表名编码的问题?
反正我一般不会建中文名的表名 |
7
casparchen 2017-04-20 04:15:41 +08:00
执行了两条 insert 语句,每条少一个字段
|
8
suueyoung 2017-04-20 07:10:41 +08:00 via iPhone
所以我用 orm
|
9
771456556 OP 谢谢大家回复…我发现是我蠢了…现在已经改好了,中文的表名可以用
|
10
yanzixuan 2017-04-20 08:50:23 +08:00
@771456556 为啥用 sqlalchemy 这样的 ORM 。建立好 model 之后,直接 xx_model(**temp_dict), 然后 add, commint 就行
|
11
Hozzz 2017-04-20 09:07:26 +08:00
中文表名...
|
12
shihira 2017-04-20 11:55:22 +08:00 via Android
如果是当成纯数据最好存进个 blob 里,非要存进 text 里的话先 base64 编码。最好不要拼接字符串,仔细转义,小心注入。
|
13
woostundy 2017-04-20 12:23:19 +08:00
这种东西存 mongo 里比较好,或者弄成 json 再存。
|
14
cnbgfm 2017-04-24 10:50:28 +08:00
是怎么解决的,能告诉下方法吗
|