우리는 다양한 소스에 사용되는 CHAR "코드"필드가있는 수백 개의 테이블을 가진 DB를 가지고 있습니다. 이 코드 필드는 여러 테이블에 대한 기본 키 및 외래 키입니다.Char PK/FK를 어디서나 Varchar 또는 RTRIM으로 변환 하시겠습니까?
이제 ASP.NET 응용 프로그램에서 resource의 mouseover에이 코드를 표시하고 코드가 CHAR 필드 길이보다 짧으면 공백을 표시합니다. RTRIMing (종종 간과되는)을 통해이를 수정합니다.
- 큰
- 가에서 변환하는 동안 자동으로 모든 PK/FK 제약 조건을 삭제하고 다시 만들 수있는 방법이 될 것이라고 성능에 미치는 영향이 안된다 그래서 우리는 활성 사용자의 낮은 100 단위에 몇 10 초를해야합니다 CHAR에서 VARCHAR로? 나는 INFORMATION_SCHEMA에서 약간 보았고 실현 가능성이있는 것 같습니다.
SQL에서의 비교는 훌륭하지만 (공백 무시) C# 코드의 비교는 때때로 코더가 값을 RTRIM하고 비 RTRIM 값과 비교하기 때문에 문제를 일으킨다 . – FrancoisCN