2011-01-20 14 views

答えて

121

TINYINT(1)の両方とも同義語です。

+9

アダムの言葉MySQLには実際のBOOLEAN型はありません。 – Mchl

3

私は気づいたことの一つ - MySQLでBOOLとして定義された列で、春Rooのは正しくブールに値をアンマーシャリングするためにJavaコードを生成し、おそらくBOOLを指定することは、たとえ列の意図された使用についてのヒントの性質にすぎないとしても、いくらかの価値を追加することができます。

17

他のコメントでは、TINYINT(1)と同義です。

* なぜ、bool、boolean、tinyの区別がつかないのですか? * int(1)?

ほとんどのセマンティクス。

ブールとブール:MySQLのデフォルトでは、これらをtinyint型に変換します。この記事の執筆時点で作成されたMySQLの声明では、「将来のMySQLリリースで標準SQLに準拠した完全なブール型処理を実装しようと考えています。

0 = FALSE 1 = TRUE

TINYINT:1つのバイトを占有。 -128から+127の範囲である。または、0 - 256


一般的に、この比較で育っ

: のMySQL 5.0.3の後 - ビット:8つのバイトを格納バイナリデータのみを使用します。

+1

これは本当に質問に答えません。 'BOOL'と' BOOLEAN'の違いは何ですか? – nalply

+7

以前の投稿は、両方ともTINYINT(1)と同義であることをすでに確立していました。理想的には、次の質問は「なぜ、それらがデータ型を区別したのか」ということです。 – Sixthfore

+1

@「ビット:8バイトを使用しバイナリデータのみを格納する」の前に@は誤った情報です。テーブルにビット列を追加すると、単一のビットだけでなく、各レコードのバイト全体が占有されます。 2番目のビット列を追加すると、同じバイトに格納されます。 9番目のビット列には、2番目のバイトの記憶域が必要です。 – Kolyunya

関連する問題