2009-05-05 4 views
1

의 varchar/텍스트 필드의 데이터 정렬을 변경하지 못했습니다. 데이터베이스의 데이터 정렬을 변경했습니다. 변경 전의 모든 text/varchar 열은 데이터베이스 기본값으로 설정되었습니다. DB 데이터 정렬이 변경되면 데이터베이스 기본값으로 설정된 열이 새로운 DB 데이터 정렬에 연결되어있을 것으로 예상됩니다. 그러나 이러한 열이 실제로 이전의 데이터 정렬로 특별히 변경되도록 변경되었음을 확인했습니다.데이터베이스 정렬 변경 DB (MS SQL)

모든 열을 업데이트하는 스크립트가 있지만이 열이 database_default로 유지되지 않았거나 새로운 데이터 정렬로 설정되지 않은 이유에 대해 흥미가 있습니다. 그래서 내가 가진 질문은 다음과 같습니다.

1 : 열이 업데이트되지 않는 이유는 무엇입니까?

2 : 자동으로 업데이트하도록 할 수있는 방법이 있습니까?

답변

2

최근에이 문제를 직접 경험했습니다. 데이터베이스 기본 데이터 정렬 변경은 생성 된 새 개체에 대해서만 작동합니다. 기존 개체는 변경되지 않습니다 (원본 : Books Online - "사용자 데이터베이스에 작성된 모든 새 개체의 데이터 정렬은 다음과 같이 COLLATE 절을 사용하여 변경할 수 있습니다. 이 문은 ALTER TABLE의 COLLATE 절을 사용하여 변경할 수있는 기존 사용자 정의 테이블의 열의 데이터 정렬을 변경하지 않습니다. "

업데이트를 자동으로 수행해야합니다. 수동으로 업데이트해야합니다.이 방법을 사용했습니다. here

+0

링크를 이용해 주셔서 감사합니다. 테이블 열이 업데이트되지 않고 있다는 것을 알지 못합니다. 조금 불행한 것 같습니다. MS가 모든 옵션을 업데이트 할 수있는 옵션이 제공되지 않습니다. 열. 이 줄은 내 질문에 대한 대답입니다 : "ALTER DATABASE COLLATE 명령은 데이터베이스의 * DEFAULT * 데이터 정렬 만 변경하고 기존 개체 (예 : 열 및 테이블)의 데이터 정렬을 변경하지 않으며 이전 데이터에도 여전히 저장됩니다 기본값이 변경된 경우에도 데이터 정렬 순서. " 감사합니다. – Madeleine

관련 문제