내 Vertica에 연결하는 데 문제가 있습니다.
PHP와 PDO ODBC 드라이버 (unixODBC 사용)를 사용합니다.
isql을 통해 Vertica에 연결하고 테이블에서 레코드를 선택하면 모든 데이터가 잘 인코딩됩니다. UTF-8 (키릴 문자와 같은 비 ASCII 기호) 필드가 올바르게 인쇄됩니다.
웹에서 PHP 스크립트로 연결하고이 필드에 다음과 같은 유니 코드 문자가있는 동일한 쿼리를 실행하는 경우 \ u001A \ u001A \ u001A \ u001A
각 \ u001A는 ASCII가 아닌 기호 하나를 나타내며 인쇄 할 수 없습니다.Apache/PHP의 쿼리에서 인코딩이 올바르지 않습니다.
이 문제는 웹에서 스크립트를 실행할 때만 발생하는 것으로 나타났습니다 (웹 서버는 Apache2 임).
그래서 콘솔에서 스크립트를 실행하면 정상입니다.
그러나 localhost/test.php에서 수행하면 문제가 발생합니다.
Linux 및 Windows 용 Vertica 클라이언트 드라이버의 x32 및 x64 버전에서 발생합니다.
Apache가 Vertica에서 얻은 결과 결과에 어떤 영향을 미칠 수 있습니까?
작업을 시작합니다. Vertica가 참여하는 것이 좋습니다. 드라이버의 버그처럼 들리는데, 결국에는 디버깅이 필요합니다. 이 사이트에 대한 아름다운 대답은 아니지만, 그게 내가 서둘러야 할 일이다. – geoffrobinson