使用python将json存入数据库

任务描述:

需要将python的json字符串存到数据库中,还要保证读取出来后,能解析成字典,中间不会发生任何转义或者改变。

而对于pickle生成的序列化对象,操作过程是一样的。

使用到的python库有 json, MySQLdb

要点1:

我们要保证,存储格式json的类型是BLOB类型的

1 `json` blob NOT NULL  COMMENT 'json',
要点2:

使用''包裹此字段,format成insert语句,我没试过不包裹的后果是啥,一般而言字符串都是需要引号包裹的,反正我包起来是没问题的。

1 tsql = "INSERT INTO xxx(`json`, ...)VALUES('{json}', ....)"
要点3:

要使用MySQLdb.escape_string函数,来对json字符串进行escape

1 sql = tsql.format(json=MySQLdb.escape_string(json), ....)
要点4:

查询出来的结果使用json.loads()就ok了。 for .. , data in cursor.fetchall(): print ..., json.loads(data)

转自: http://www.tuicool.com/articles/ZnUnUrf

你可能感兴趣的:(Python,MySQL,Python,MySQL)