2011-12-21 2 views
0

Я пишу некоторые данные в Mysql базы данныхошибка вставки в таблицу SQL в питоне, потому что строка содержит%

одного атрибута является ссылкой, например: «http://dbpedia.org/resource/Madigan%27s_Millions»

для некоторой вставки есть ошибка: ошибка

Error 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 's Millions',"http://dbpedia.org/resource/Madigan%27s_Millions" 

Я подозревал, что эта ошибка приходит из-за % оператора связи. Он входит в переменную с веб-сайта, а затем он должен вводить в базу данных, используя SQL.

Не мог бы кто-нибудь сказать мне, если я правильно думаю, что это приемлемое решение для его решения? in p

+0

Я новичок в потоке стека. не могли бы вы рассказать мне, как я могу принять ответы –

+0

Конечно. Под каждым голосованием голоса ответят галочку. Нажмите галочку для ответа, который, по вашему мнению, является правильным ответом. Принимая ответы, вы получаете 2 балла, и он информирует сообщество, ответ на который решил вашу проблему. Для получения дополнительной информации о принятии ответов см. Http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work –

ответ

2

У вашего MySQL нет проблем с %, но с апострофом. Еще раз проверьте, что именно вы вставляете (я уверен, что это не то, что вы считали), путем печати на stderr и проверки журналов сервера, или с помощью механизма регистрации вашей инфраструктуры. Если я прав, воспользуйтесь функцией mysql escape или параметризованными операциями, чтобы преобразовать ' в \' (details)

+0

Если вы видите ссылку с ошибкой: «http://dbpedia.org/resource/Madigan%27s_Millions «У него нет». ну, в любом случае, я все еще заменял все «с», но все же я столкнулся с такой же ошибкой. Проблема еще не разрешена –