В настоящее время я работаю над сценарием Python, который извлекает данные из таблицы базы данных A и помещает все эти данные в базу данных B, которая не расположена рядом с базой данных A.при вызове вставки в базу данныхB я получаю сообщение об ошибке от модуля 1064 mysqldb:
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 \'1">®</font></sup>)", "somewords", "", "somewords", "some more words", "00000XXXXX\' at line 1')
Я не уверен, что это из строки, содержащей кавычки без escape-символов, или HTML <>символов.
Есть ли способ заставить Python полностью игнорировать содержимое строки при выполнении вставки sql?
Я пробовал '
и "
и '''
и"""
вокруг команды sql, и хотя одна ситуация решает одну проблему, позже в строках она встречается с другим типом кавычек и выдает ошибки одинаково.
обе базы данных одинаковы с использованием utf8,я имитировал базу данных A, вот команда sql sql2 =
'''insert into %s (orders_id, customers_id, customers_name, customers_company, customers_street_address, customers_suburb, customers_city, customers_postcode, customers_state, customers_country,
customers_telephone, customers_email_address, customers_address_format_id, delivery_name, delivery_company, delivery_street_address, delivery_suburb, delivery_city, delivery_postcode, delivery_state,
delivery_country, delivery_address_format_id, billing_name, billing_company, billing_street_address, billing_suburb, billing_city, billing_postcode, billing_state, billing_country, billing_address_format_id,
payment_method, payment_module_code, shipping_method, shipping_module_code, coupon_code, cc_type, cc_owner, cc_number, cc_expires, cc_cvv, last_modified, date_purchased, orders_status, orders_date_finished,
currency, currency_value, order_total, order_tax, paypal_ipn_id, ip_address) Values ("%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s",
"%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s","%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s")''' %
(bush, r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r32, r33, r34, r35, r36, r37, r38, r39, r40, r41, r42, r43,
r44, r45, r46, r47, r48, r49, r50, r51)
bush, это raw_input, запрашивающий имя таблицы.