2017-11-17 1 views
-1

저는 약간의 문제가 있습니다. SQL Server 데이터베이스에서 일하고 있는데 뷰에서 데이터를 가져 오는 데만 액세스 할 수 있습니다.Sql 서버의 select 문에서 "UTF-8"로 문자 집합을 설정하는 방법

이제 데이터베이스에는 우크라이나어와 같은 다른 언어로 정보가 포함되어 있습니다. 그래서, select query를 사용하여 데이터를 가져 와서 브라우저에 출력하면 실제 데이터 대신 물음표 (??)가 표시됩니다.

내 검색어는 아래와 같습니다 :
select * from view1;

enter image description here

물음표를보고하십시오 :

는 그리고 출력은 뭔가 다음과 같다.

이전에 sqlsrv_connect() 함수를 사용하여 SQL Server 데이터베이스에 연결했으며이 함수를 사용하면 작업에 문자 집합 (UTF-8)을 설정할 수 있습니다. 하지만 클라이언트 서버가 리눅스에 있고, mssql_connect()를 사용해야하고이 함수는 문자 집합을 설정하는 옵션이 없습니다.

문자 세트를 "UTF-8"로 설정하면 선택 검색어에서 실제 데이터가 표시됩니다. 그러나, mssql_connect() 함수의 경우에 할 것입니다.

이런 종류의 상황을 처리 할 데이터 정렬이 있습니까? 또는 select 문을 실행하기 전에 문자 세트를 변경하는 다른 방법.

이 문제에 대해 도와주세요. 나는 정말로 좌절하고있다. 감사의 말을 미리

+0

데이터가 일부 유니 코드 데이터 열에 유니 코드로 올바르게 저장 되었습니까? 나는 데이터가 저장 때문에 실제로 손상되었다는 것을 의심한다. 그래서 그것을 성취하면 항상 손상된 문자열을 반환 할 것이다. –

답변

-1

에서 utf8_general_ci으로 설정하십시오. 나는 이것을 사용하여 테이블에 거의 모든 종류의 언어를 표시합니다. 그러나 utf8이 얼마나 많은 글자와 기호를 지원하는지에 달려 있습니다.

+0

데이터베이스와 테이블 조합을 변경할 수 없습니다. 뷰에서 데이터를 가져 오는 것만 허용합니다. – Dhirender

+0

데이터베이스를 변경할 수 없으면 데이터베이스 데이터 정렬 자체로 인해 데이터가 이미 데이터베이스에 인코딩되어 있기 때문에 데이터를 표시하지 않습니다. 그러나 여하튼, 당신은 다른 대답을 기다릴 수 있습니다. 누군가이 작업을했을 수도 있습니다 =) –

관련 문제