2011-10-15 4 views
0

PHP와 PDO를 사용하고 있습니다. 매개 변수는 바로 바인딩입니다. 이 쿼리를 잘 실행 된 또는 "^ M"문자가 있다면 내가^mysql 쿼리 로그의 문자는 어디에서 유래 되었습니까?

에 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' 

에 따라 얻을, 난 정말 확실하지 않다 로그 파일에만 추가되고 실제 쿼리에는 추가되지 않습니다. Query with ^M

그냥 로그에인가 :

내가 같은 문자가 포함 된 쿼리를 찾을 구글의 빠른 검색을 수행? 또는 그 캐릭터와 함께 실제로 실행 되었습니까? 따라서 실행 중에 오류가 있었습니까?

답변

2

^M은 많은 UNIX 터미널에서 캐리지 리턴을 화면에 표시합니다. 아마도 Windows 스타일의 줄 끝 (\r\n)을 포함하는 로그 파일 및/또는 쿼리 문자열이 있지만 유닉스 모드 (\n)로 읽음으로써 캐리지 리턴 (\r = ^M)이 표시됩니다.

\r과은 모두 공백 문자이므로 무시해도 실제 문제는 발생하지 않습니다.

+0

누군가가 WinSCP에 로그를 열었다 고 설명합니다. –

+0

또는 어쩌면 소스 코드 – stivlo

2

^Mchr(13)에 해당하며 \r으로 표시되며 캐리지 리턴입니다. 유닉스에서

  • 유닉스 라인 터미네이터는 CHR(10) (또는 \n, 새로운 라인 문자)
  • 윈도우 터미네이터가 chr(13)입니다입니다. chr(10) (또는 "\r\n", 반환 및 새 줄).

MySQL은 이러한 모든 문자를 공백으로 무시하므로 걱정할 필요가 없습니다.

관련 문제