Re:언어 관련 접속 오류가 발생합니다.

SQL Server
작성자
qbteam
작성일
2018-03-20 18:29
조회
2448
안녕하세요. ko21c님 QueryBox 개발팀입니다.

QueryBox에 많은 관심을 주셔서 감사드립니다.

해당 현상은 사용하는 MSSQL의 접속하시려는 Database가 사용하는 Collation값이 "SQL_Latin1_General_CP1_CI_AS"이기 때문에 발생하는 현상이며
해당 Database의 Collation값을 Korean_Wansung_CI_AS으로 변경해주셔야 원할한 접속이 가능합니다.

해당 값은 "SELECT name, collation_name FROM sys.databases;" 문장을 통해 Database의 Collation값을 확인하실 수 있습니다.
Collation 값 변경은 다음과 같은 절차로 진행하실 수 있습니다.
>> 먼저 sa계정으로 master Database에 접속하신 뒤, 다음과 같은 쿼리를 전송합니다.
>> alter database [접속하시려는 Database] collate Korean_Wansung_CI_AS;

이 때에 다음과 같은 에러가 발생 하실 수 있습니다.
>> 개체 'X'은(는) 데이터베이스 데이터 정렬에 종속되어 있습니다. 스키마 바운드 개체가 데이터베이스 데이터 정렬에 종속되어 있으므로 데이터베이스 데이터 정렬을 변경할 수 없습니다. 데이터베이스 데이터 정렬에서 종속성을 제거한 다음 작업을 다시 시도하십시오.

다음과 같은 작업을 하시면 해결하실 수 있습니다.
1. 오류 메시지에 나타난 개체 삭제
ALTER TABLE [dbo].[ChunkSegmentMapping] DROP CONSTRAINT [개체 'X']
GO

2. 접속하시려는 Database의 collation 변경
alter database [접속하시려는 Database] collate Korean_Wansung_CI_AS;

3.
USE [접속하시려는 Database]
GO

4. 삭제한 제약 조건 다시 생성
ALTER TABLE [dbo].[ChunkSegmentMapping] WITH CHECK ADD CONSTRAINT [개체 'X'] CHECK (([ActualByteCount]>=(0)))
GO
ALTER TABLE [dbo].[ChunkSegmentMapping] CHECK CONSTRAINT [개체 'X']
GO

아래의 블로그에서 또한 자세히 설명되어있어 링크 드립니다.
>> 블로그 링크
>> posted by Giwhan Han

원할한 접속을 위해 Database의 Collation값을 변경하는 기능은 차후 업데이트로 반영하여 불편함이 없도록 하겠습니다.

감사합니다.
전체 0