차이점 차이점

Anonim

Varchar vs Nvarchar

Varchar는 가변 문자 필드의 약식 이름입니다. 문자는 불확정 길이의 데이터를 나타냅니다. Varchar는 데이터베이스 관리 시스템에서 볼 수있는 데이터 열 유형입니다. Varchar 열의 필드 크기는 고려중인 데이터베이스에 따라 다를 수 있습니다.

Oracle 9i의 필드는 최대 한도가 4000 자입니다. MySQL의 경우 한 행에 65, 535 개의 데이터 제한이 있으며 Microsoft SQL Server 2005에는 필드 제한이 8000입니다.이 수치는 Varchar (최대)를 사용하는 경우 Microsoft SQL 서버에서 2GB로 높아질 수 있습니다. 반면에 Nvarchar는 모든 길이의 유니 코드 데이터를 저장할 수있는 열입니다. Nvarchar가 준수해야하는 코드 페이지는 8 비트 코딩입니다. Varchar의 최대 크기는 NVARCHar의 최대 크기는 4000이지만 Varchar의 단일 열은 최대 8000 자일 수 있으며 Nvarchar의 단일 열은 최대 4000 자일 수 있음을 의미합니다. 열 값을 초과하면 커다란 문제가되며 SQL 서버 2005를 제외하고 행이 여러 페이지로 확장 될 수 없으므로 심각한 문제가 발생할 수 있으며 제한 사항을 준수해야합니다. 그렇지 않으면 오류가 발생하거나 잘립니다 …

Varchar와 Nvarchar의 가장 큰 차이점 중 하나는 Varchar에서 공간을 적게 사용한다는 것입니다. Nvarchar는 유니 코드를 사용하기 때문에 유니 코드를 사용하기 때문에 특정 코드를 코딩하는 번거 로움 때문에 더 많은 공간을 차지합니다. 저장된 모든 문자에 대해 유니 코드에는 2 바이트의 데이터가 필요하며 이는 Varchar에서 사용하는 비 유니 코드 데이터와 비교할 때 데이터 값이 더 높아 보이도록하는 원인 일 수 있습니다. 반면 Varchar는 저장되는 모든 문자에 대해 1 바이트의 데이터 만 필요합니다. 그러나 더 중요한 것은 유니 코드 사용이 더 많은 공간을 차지하지만 수동으로 해결할 수있는 문제인 코드 페이지 비 호환성으로 인해 발생하는 문제를 해결한다는 것입니다.

따라서 우주 특징은 발생하는 비 호환성을 해결하기 위해 유니 코드를 취하는 짧은 시간보다 우선적으로 간과 될 수 있습니다. 또한 디스크 및 메모리 비용도 상당히 저렴하게되어 공간 기능을 종종 간과 할 수 있으며 Varchar로 인한 문제를 해결하는 데 더 많은 시간을 너무 쉽게 해지 할 수 없습니다.

모든 개발 플랫폼은 내부적으로 최신 운영 체제를 사용하므로 유니 코드를 실행할 수 있습니다. 이것은 Nvarchar가 Varchar보다 더 자주 고용됨을 의미합니다. 인코딩 변환은 피하므로 데이터베이스를 읽고 쓰는데 걸리는 시간이 줄어 듭니다. 이것은 또한 발생하는 변환 오류의 복구가 처리 할 간단한 문제가되어 오류를 상당히 줄입니다.

유니 코드 사용의 이점은 ASCII 응용 프로그램 인터페이스를 사용하는 사람에게도 해당됩니다. 데이터베이스가 특히 운영 체제와 데이터베이스 연합 알고리즘에 잘 응답하기 때문입니다. 유니 코드 데이터는 변환 관련 문제를 피하고 데이터를 유지해야하는 레거시 시스템과 관계없이 7 비트 ASCII로 제한된 경우 항상 데이터의 유효성을 검사 할 수 있습니다.

요약

Varchar와 Nvarchar에는 서로 다른 문자 유형이 있습니다. Varchar는 유니 코드가 아닌 데이터를 사용하는 반면 Nvarchar는 유니 코드 데이터를 사용합니다. Varchar와 Nvarchar는 반드시 준수해야하는 다양한 데이터 유형이 있습니다. Varchar는 데이터를 1 바이트 시퀀스로만 저장하고 Nvarchar는 각 문자에 대해 2 바이트로 데이터를 저장합니다.

최대 길이 또한 다양합니다. Varchar 길이는 8000 바이트로 제한되며 4000 바이트는 Nvarchar의 제한 사항입니다.

Varchar의 저장소 크기가 Nvarchar에서 사용하는 유니 코드 데이터와 달리 직관적이기 때문입니다.