MySQLdb Python заменяет двойные кавычки на одинарные - PullRequest
0 голосов
/ 17 декабря 2018

Я использую python для чтения значений из REST API и записи в таблицу MySQL.Одним из возвращаемых значений является JSON, который я хочу сохранить в БД.

Значение, возвращаемое API, содержит экранированные кавычки и выглядит примерно так:

{\"dashboard\":\"val\"}

Когда я используюпечать, я вижу, что escape-символы заменяются фактическими кавычками (что является желаемым результатом):

{"dashboard":"val"}

Однако, когда я использую MySQLdb, execute или executemany (с токенизированными параметрами) -Для значения, записанного в базу данных, все двойные кавычки заменяются одинарными кавычками, что делает его недействительным json:

{'dashboard':'val'}

Как этого избежать?

1 Ответ

0 голосов
/ 17 декабря 2018

Вам следует изменить свою библиотеку на mysql.connector или pymysql или т. Д., Поскольку MySQLdb имеет некоторые проблемы, которые вы не можете предсказать.Даже если ваши параметры и base_sql верны.Я рекомендую mysql.connector, потому что это официальная библиотека MySQL.https://dev.mysql.com/downloads/connector/python/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...