database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
ㆍMS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MS-SQL Q&A 5126 게시물 읽기
No. 5126
PHP + MS-SQL 2005 Express 유니코드 관련 질문입니다.
작성자
PPer
작성일
2009-06-30 21:31ⓒ
2009-06-30 21:36ⓜ
조회수
7,366

안녕하세요, 이것저것 해보다가 답답해서 질문 드립니다.

먼저 개발환경은 윈도우즈 XP professional SP3이며, Apache 2.2.6 + PHP 5.2.4(RWAPM Suite) + MS-SQL 2005 Express 버전에

Express Management Studio를 깔아서 쓰고 있습니다.

일단 Apache와 PHP 세팅에서 UTF-8로 문자셋을 지정했습니다.(Apache는 AddDefaultCharset, PHP는 default_charset  항목을 utf-8로 수정)

그리고 데이터를 집어 넣는 php 파일들을 모두 utf-8로 인코딩 해서 만든 후에 

MS-SQL 2005에서 테이블에 nvarchar(4000)와 ntext의 컬럼을 만들고 여기에 자료를 넣어봤습니다.

일단 완성형 범위의 한글은  웹 페이지에서 잘 나왔습니다. 물론 Express management studio의 쿼리 실행기에서는 데이터가 깨져서 출력이 됐습니다.

그리고 다른 데이터를 입력해봤습니다. '똠방각하'. '뛟', '킈'같은 완성형 범위를 넘어가는 한글이나, 고문서에 나오는 한자등의 자료를 넣으려고 하니까

정상적으로 출력이 되지 않고 깨져서 나옵니다. '똠방각하' 같은  경우는 '?�방각하'로.. 고문서의 한자 같은 경우는 '???��??????' 이런식으로 문자가

깨져서 나오고 있습니다.

PHP의 ms-sql 함수나, sqlsrv_ts.dll 등의 라이브러리를 둘다 써봤지만 결과는 마찬가지였습니다.

APACHE나 PHP 설정에서 빠진 부분은 없는것 같은데 MS-SQL 설정에서 유니코드를 사용하기 위해서 따로 설정을 해줘야 하는 부분이 있는지요?

참고로 MS-SQL 2005 서버 설치, 데이터베이스 생성시 데이터 정렬은 기본값으로 두었습니다. Korea_WANSUNG_CI_AS 였나요?? 하여튼 이런식으로 설정을 했습니다.

P.S 그리고 ntext로 지정된 컬럼을 읽어오려고 하니까

'message: ISQL과 같은 DB-Library나 ODBC 3.7 이전 버전을 사용하여 유니코드 전용 데이터 정렬의 유니코드 데이터나 ntext 데이터를 클라이언트로 보낼 수 없습니다. (severity 16)'

이런 오류가 나는데 분명 이것과 관련이 있을거 같은데 답답하네요 ㅠㅠ. 이 오류는 sqlsrv  라이브러리르 사용한 것이 아니라  그냥 mssql_query() 등의 함수를 썼을때 나왔습니다.


 

[Top]
No.
제목
작성자
작성일
조회
5140전체 텍스트 검색 서비스 처음 조회 느린현상 궁금합니다.
알바
2009-07-02
5546
5135[질문] 검색 조건에 따른 SQL문 작성시... [1]
김성진
2009-07-02
5898
5134Linked Server Join 오류 질문 [1]
epqlfao
2009-07-02
5485
5126PHP + MS-SQL 2005 Express 유니코드 관련 질문입니다.
PPer
2009-06-30
7366
5125업데이트 쿼리문 질문 입니다... [2]
나그네...
2009-06-30
5226
5116정렬문제입니다. [3]
우울이
2009-06-29
5418
5109backup 쿼리문을이용해서 어느하나의 테이블만 백업 받을려면 어떻게해야되나여?
김성진
2009-06-28
5532
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.016초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다