SQLデータ型:NCHAR、CHAR、VARCHAR、NVARCHAR違いとシナリオ

要約:

CHAR:固定長、ストレージANSI文字、英語専用スペースアップメイクの欠如。例えばCHAR(10)を画定するようCHAR CHARフィールドレベルで固定長データストレージが便利であり、高効率指数は、その後にかかわらず、データ・ストレージの10バイトに達し、それは不十分な、空間の10バイトを占有しなければなりません自動充填空間後、そうする際読み取りは、CHAR(100)として、より多くのトリム()を1回以上使用することができ、その値は「銭」であるが、実際には、データベース内の「銭」(銭であります96のスペースの合計が、それは100バイト)を充填することです。しかし、固定長ので、高速効率がそう。 

NCHAR:固定長格納Unicode文字、英語サプリメント不十分ハーフサイズのスペース、各英語(ASCII)文字も文字の、2つのバイトを占有2つのバイトを占有し、すべての文字が2バイトであります。

NVARCHAR:可変長、Unicode文字ストレージ、データの長さに応じて自動的に英語のために変更する(ASCII)文字は、文字の、2つのバイトを占める2つのバイトを占有し、すべての文字が2つのバイト。

varchar型:可変長、ANSI文字メモリ、自動的にデータの長さに応じて変化します。可変長のデータを格納しますが、高い収納効率をCHARありません。フィールドの値が固定長ではないかもしれない場合は、10文字を超えることができないことを知って、我々は、それがVARCHAR(10)のように定義されたベストバイです。VARCHAR型の実際の長さは、その実際の長さの値+1です。なぜ「+1」を意味しますか?これは、格納するために使用されるバイトで実際どのくらいの長さの使用を。空間上の考慮事項は、適切な使用VARCHARから、効率の観点から、適切なチャーと、キーはトレードオフは、実際の状況で見つけることです。

差:
CHAR、NCHAR固定長さ、速度、大きなスペースを占め、に対処する必要が
VARCHAR、NVARCHAR、遅いTEXT変数の長さ、小スペース、治療なしの
NCHAR、NVARCHAR、NTEXTハンドルのUnicodeコード

VARCHAR(100)/ CHAR(100 ) 格納することができる50個の文字を、NVARCHAR(100)/ NCHAR( 100) 100個の単語を格納することができます。

CHAR、VARCHARは8000英語、4000個の中国語の文字を格納することができます。それは、NCHARを使用して見ることができる文字入力は英語または中国語の文字、より便利に、しかしとき英語の記憶喪失額の一部をあるとき、NVARCHARデータ型は、心配しないでください。

アプリケーション:

あなたは、データ長を格納する必要があり、中国語が含まれていない場合は、文字の種類を選択することができます。

データ長が、確かに保存されているが、中国を含むことができた場合は、nchar型タイプを選択することができます。

データが不定長に格納されている場合は、英語のみ、好ましくはデジタルVARCHARと、記憶されています

データストレージ不確かな長さは、中国があるかもしれない場合、あなたは、nvarchar型を選択することができます



おすすめ

転載: www.cnblogs.com/huihuixi/p/12155165.html
おすすめ