프로그래밍/DB
[DB] MSSQL Alias 한글 깨질 경우
ss-pro
2024. 11. 2. 15:41
반응형
테이터 베이스 한글이 깨질경우 해결방법입니다. 아래와 같이 SELECT문에 한글을 임의로 입력이 ??형태로 깨지는 문제발생하여 확인해보니 Collation이 맞지 않아 문제 되는 부분을 확인 했습니다.
1. 데이터베이스의 현재 Collation 조회하기
쿼리를 조회해보니 SQL_Latin1_General_CP1_CI_AS으로 되어있습니다,
1
2
3
4
5
6
7
|
SELECT
name AS DatabaseName,
collation_name AS Collation
FROM
sys.databases
WHERE
name = 'AdventureWorksLT2022';
|
cs |
2. 데이터베이스 Collation 수정하기
기존 데이터베이스의 Collation을 변경하려면 ALTER DATABASE 문을 사용합니다.
ALTER DATABASE AdventureWorksLT2022 COLLATE Korean_Wansung_CI_AS; 명령으로 변경하면 되는데 기존 테이블의 데이터도 전부 변경이 해줘야 합니다.
3. N 접두사의 사용하기
MSSQL에서 한글 문자열 앞에 N 접두사를 붙이는 작업은 한글과 같은 유니코드 문자를 안전하게 처리 할 수 있습니다. 데이터베이스가 이미 구축된경우 Collation 정보를 바꾸기 어려우니 Alias지정하는 부분에 N접두사를 이용하여 처리하면 한글깨짐 현상을 해결할 수 있습니다.