\r\n\r\n
データベースでは、CharとCharはストレージの種類に対する要求が似ている。データベース設計では、多くのデータ型が使用されます。このうち、文字データ型は数値に比べて大量の情報を格納するために使用されるため、より重要な位置を占めている。文字データ型は、文字や英数字のデータを文字列に格納するために使用されます。データベースの文字セットの種類は、データベース作成時に定義されます。ここでも、これらの文字データ型のうち、CharとVarcharが最もよく使われている。今回は、このcharとvarcharの2つのデータ型がどのようなもので、どのような違いがあるのかを説明します。
charのISO定義はcharです。charデータ型は文字を格納するために使用されます。char(n)が保持できる最大文字数は255文字で、文字列の長さは1から8000の間の値でなければなりません。charはvarcharより50%速く、したがってcharを使用する場合はより良い性能を発揮します。例えば、「はい」「いいえ」を「Y」と記憶する場合や"人のID番号 "を格納する場合、char(10)データ型を利用することも可能です。
その名の通り、varcharは可変文字として知られています。varcharは可変長の英数字データを格納するために使用されます。このデータ型が保持できる最大文字数は4000文字で、最大保存サイズは2GBです。varcharの保存サイズは、データの実際の長さに2バイトを加えたものです。varcharはcharよりも遅く、データを保存する際に動的メモリ割り当てを使用します。名前、住所、説明などのデータを格納するときに、varcharを使うことができる。varcharデータ型には、文字列だけでなく、日付型、"12 March 2015"、"12 March 2015 "などの非文字列型も格納可能である。
-charとvarcharは文字データフィールドですが、charは固定長データフィールド、varcharは可変サイズデータフィールドです。
-Charは固定サイズの非Unicode文字列しか格納できませんが、varcharは可変サイズの文字列を格納することができます。
-頻繁に変更されるデータには、固定長の行の方が断片化しにくいので、varcharよりもcharの方が望ましい。
-Charは、変数が宣言されたときに定義された固定スペースのみを占有します。ただし、charやcharはvar2を基準にしたデータの長さも占めますし、var2を基準にしたデータの長さも占めます。
-255文字未満の場合は1バイト、255文字以上の場合は2バイトを確保します。Y' と 'N' の符号を格納するために char を使用すると、1 バイトを使用しますが、varchar を使用すると、長さのプレフィックス用の余分なバイトを含めて、符号を格納するために 2 バイトを使用することになります。
概要
charとvarcharはデータベースで最もよく使われる文字データ型である。charは固定長の文字列を格納するために使われ、varcharは可変長の文字列を格納するために使われる。データからより良いパフォーマンスを得るためには、データベースのテーブル・フィールドに正しいデータ型を選択することがより重要です。データを正しく格納できる最小のデータ型は、メモリに占める容量が少ないので使いやすいのです。