2

我正在尝试将 HTML 代码插入到 MySQL 数据库中的字段中。

我使用下面的代码来做到这一点

cur.execute("INSERT INTO `table1`(field1) VALUES("+ str(data) +")")

但我收到以下错误:

_mysql_exceptions.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 \'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 
Transitional//EN" "http://www.w3.or\' at line 3')

我怎么解决这个问题?提前致谢!

4

2 回答 2

4

你应该转义你的字符串:

cur.execute("INSERT INTO `table1`(field1) VALUES('"+ conn.escape_string(str(data))+"')")

conn你的连接在哪里。

于 2012-08-15T15:42:19.323 回答
1

检查您的字符串 - 看起来您正在转义单引号但未转义双引号(并且由于您使用双引号括起来,因此字符串“提前”关闭)。

于 2012-08-15T15:42:04.260 回答