[前][次][番号順一覧][スレッド一覧]

mysql:9851

From: "Ebihara, Yuichiro" <"Ebihara, Yuichiro" <Yuichiro.Ebihara@xxxxxxxxxx>>
Date: Wed, 14 Jul 2004 11:21:45 +0900
Subject: [mysql 09851] 文字列データ型について

こんにちは、海老原です。

文字列を格納するためのデータ型についてお尋ねします。

MySQLでは文字列用の主なデータ型として以下ものがあります。

CHAR (固定長)
VARCHAR (可変長)
CHAR BINARY (固定長)
VARCHAR BINARY (可変長)

CHARとVARCHARでは、値を比較するときにCase Insensitive(大文字と
小文字を区別しない)になり、CHAR BINARYとVARCHAR BINARYではCase
Sensitiveになるのがその違いだと理解しています。

他のRDBMSは基本的にCase Sensitiveですし、これらのデータ型を引
数に取るSQL関数における大文字・小文字の取り扱いもばらばらで混
乱するので、ローカルルールとしては「常にCHAR BINARY、または
VARCHAR BINARYを使え」としてしまおうかと考えていますが、これに
よる副作用って何か考えられますでしょうか。

ついでにもう1つ。

4バイト未満のVARCHAR列は、自動的にCHAR列に変更されますが、その
逆はないですよね?
つまり4バイト以上のCHAR列を定義すると、それがVARCHARに自動変更
されたりはしませんよね? ということで、念のための確認です。
(ただし他に可変長列がある場合は除く)

以上、ご回答いただけると助かります。

--
海老原 雄一郎 / EBIHARA Yuichiro
E-mail: Yuichiro.Ebihara@xxxxxxxxxx

[前][次][番号順一覧][スレッド一覧]

->    9851 2004-07-14 11:21 ["Ebihara, Yuichiro" ] 文字列データ型について                  
      9853 2004-07-14 13:34 ┗[<takeshi@xxxxxxxxxx>]                                       
      9855 2004-07-14 13:55  ┗[EBIHARA Yuichiro <ui]                                     
      9856 2004-07-14 14:19   ┗[<takeshi@xxxxxxxxxx>]                                   
      9857 2004-07-14 14:38    ┗["HIROSE, Masaaki" <h]                                 
      9859 2004-07-14 16:32     ┗[<takeshi@xxxxxxxxxx>]                               
      9862 2004-07-15 10:47      ┗[EBIHARA Yuichiro <ui]