我正在使用PDO for php和。参数绑定权限。但是当我在CentOS 5.6上检查我的mysql-query.log时
我得到以下
UPDATE
^ M site_folder_pages ^ M
SET
^ M ^ M title = 'Schanz, Hermann',
^ M `desc` = 'Telefonnummer, E-Mailadresse',
^ M declared_encoding = NULL,
^ M detected_encoding = NULL,
^ M word_count = '230',
^ M last_checked = NOW(),
^ M date_modified = NOW() ^ M
WHERE ^ M url_hash = '0001843c8b7bb28b46323fd1e8a3efa5' ^ M
AND site_id = '52f2b2940f79c1f7d623b066b2bce2e5'
有了这个,我不确定这个查询是否正确执行,或者“^ M”字符是仅添加在日志文件而不是实际查询中。
在Google中进行快速搜索我也会找到具有相同字符的查询: Query with ^M
它只是在日志上吗?或者它是否真的使用该字符执行,因此执行期间出错?
答案 0 :(得分:2)
^M
对应chr(13)
,也表示为\r
,并且是回车。
CHR(10)
(或\n
,新行字符)chr(13)
。 chr(10)
(或"\r\n"
,返回和换行)。MySQL将忽略所有这些字符作为空格,因此您不必担心。
答案 1 :(得分:2)
^M
是许多UNIX终端中回车的屏幕表示。您可能正在查看的是包含Windows样式行结尾(\r\n
)的日志文件和/或查询字符串,但是以UNIX模式(\n
)读取它,因此回车符({ {1}} = \r
)正在显示。
由于^M
和\r
都是空格字符,因此MySQL会忽略它们,因此不会导致实际问题。