반응형
SQL Server의 고유 키 위반-오류 2627을 가정해도 안전합니까?
UNIQUE개발중인 C # 응용 프로그램에서 특별한 방식으로 제약 조건 위반을 포착해야합니다 . Error 2627항상 이런 종류의 위반에 해당 한다고 가정하는 것이 안전한가요?
if (ThisSqlException.Number == 2627)
{
// Handle unique constraint violation.
}
else
{
// Handle the remaing errors.
}
?
2627은 고유 제약 조건 (기본 키 포함)이고 2601은 고유 인덱스입니다.
SELECT * FROM sys.messages
WHERE text like '%duplicate%' and text like '%key%' and language_id = 1033
다음은이를 찾기 위해 작성한 편리한 확장 방법입니다.
public static bool IsUniqueKeyViolation(this SqlException ex)
{
return ex.Errors.Cast<SqlError>().Any(e => e.Class == 14 && (e.Number == 2601 || e.Number == 2627 ));
}
근사치 내에서 그렇습니다.
MS 오류 및 이벤트 사이트에서 SQL Server 오류 2627을 검색하는 경우이 페이지에 도달해야합니다. 이 페이지 는 메시지가 항상 중복 키 위반과 관련이 있음을 나타냅니다 (매개 변수화되는 부분과 그렇지 않은 부분에주의).
Violation of %ls constraint '%.*ls'. Cannot insert duplicate key in object '%.*ls'.
반응형
'Program Club' 카테고리의 다른 글
| Android : 루팅되지 않은 Android 기기로 HTTP 요청 캡처 (0) | 2020.11.11 |
|---|---|
| 재귀 적으로 정의 된 목록 이해 (zipWith 측면에서 fibs) (0) | 2020.11.10 |
| X-Macros의 실제 사용 (0) | 2020.11.10 |
| Haskell 함수 실행 시간 (0) | 2020.11.10 |
| Rails 앱에서 httparty로 기본 인증을 사용하는 방법은 무엇입니까? (0) | 2020.11.10 |