2011-01-09 2 views
0

で2つの文字は、このテーブルを想定は-1 1つの文字またはINT列

`publish` INT(1) NOT NULL DEFAULT '0' 

は-1には、-9、この列に入力することができますか?

+2

テストするとどうなりますか? –

+0

@Vincent StackExchangeフォーラムと思われる人(自分自身を含む:-) –

+0

@Vincent:今はmysqlデータベースにアクセスできないので、いくつかのコードを解凍する必要があります。 – HyderA

答えて

2

はい。特に

http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html

MySQLは は、必要に応じて塩基以下 括弧内整数データ型の表示 幅を指定するための拡張をサポート括弧内の数字は、単に表示幅でありますタイプのキーワード たとえば、INT(4) は、4桁の表示幅が のINTを指定します。このオプションのディスプレイ の幅は、アプリケーションによって に の列に指定された幅よりも小さい幅の の整数値を、 のスペースで左に埋めて表示することに使用できます。 (すなわち、この幅はアプリケーション次第である 結果セットで返されたメタデータに 存在は、それが使用されるかどうか。あるか。)

表示幅は、可能な値の範囲を を制限しません列に が格納されています。 の値が列の表示 の幅よりも広く表示されないようにはなりません。 例えば、 SMALLINTとして指定されたカラム(3)は、-32768〜32767の通常SMALLINT 範囲を有し、3 桁以上の3桁を使用して、完全に表示されることにより、許容範囲外 値。

INT型は、符号付き整数と符号なし整数をサポートします。

1

はいint(1)に-1〜-9を格納できます。 Mysqlでは、型のbaseキーワードに続く括弧は、dispayed numberの幅がparanthesisで指定されている値よりも小さい場合にのみ0をパディングするために使用されます。たとえば、int(3)を使用する場合、1は001としてディスパッチされます。そして、数値が指定された幅より大きい場合、数値は完全にディスパッチされます。例えば、int(3)の場合、1234は完全な1234として表示されます。paranthesisの幅は格納できる実際の範囲には影響しません。

関連する問題