2

我正在创建一个记录影响数据库的操作的日志表,并将 sql 语句存储在一个名为 details 的字段中。

下面是一个示例查询,我尝试在日志表中插入一行,但在详细信息部分遇到问题,因为我将查询插入到字段中,mysql 将其解释为实际查询和错误的一部分

INSERT INTO `user_log` SET `log_dts`='2012-05-28 15:07:19', `user_id`='4', `details`='UPDATE `property` SET `timedeleted` = '2012-05-28 15:07:19' WHERE `propertyid` IN (1594930)'

最好如何处理?

谢谢。

编辑:添加,详细信息字段是 mysql 数据库中的文本字段。

4

3 回答 3

1

您需要转义字符串中的引号。

见:http ://dev.mysql.com/doc/refman/5.5/en/string-literals.html

于 2012-05-28T15:21:04.040 回答
0

您必须在“'”中添加一个转义字符,只需将查询中所有出现的 ' 替换为 \'。

于 2012-05-28T15:20:53.763 回答
0

mysql_real_escape_string-d'uh

于 2012-05-31T10:54:43.707 回答