mysqlのデータ型とは何ですか?

coldplay.xixi
リリース: 2020-10-29 16:18:21
オリジナル
24200 人が閲覧しました

mysql データ型には次のものが含まれます: 1. 数値型; 2. 日付と時刻の型; 3. 文字列型は CHAR、VARCHAR、BINARY [バイナリ データ型]、BLOB、TEXT [テキスト型]、ENUM [列挙型] です。タイプ] と SET [データ収集]。

mysqlのデータ型とは何ですか?

mysql データ型は次のとおりです:

MySQL でサポートされるデータ型はいくつかあります。カテゴリ: 数値型、日時型、文字列 (文字) 型。

データ型:

注:

  • フィールドを定義するときは、よく num int を使用します ( 10) この符号なしの書き方では、int(10) はフィールドに長さ 10 の数値が格納されることを意味しません。

  • int(M) は数値表示の形式を表し、フィールド属性がゼロフィルに設定されている場合にのみ有効です。

例:

Tinyint(4) -- 実際に格納される値は 2 です。zerofill が指定されていない場合、クエリの結果は 2 になります。zerofill が指定されている場合、が指定されている場合、クエリ結果は 0002 で、左側を埋めるために 0 が使用されます;

zerofill 属性:

  • フィールドに次の値が指定されている場合zerofill 属性を指定すると、mysql は自動的に Field と UNSIGNED 属性を加えます。

  • 列式または UNION クエリに関係する場合、ZEROFILL 属性は無視されます。

浮動小数点:

Float(M,D): MM は、整数部分と小数部分を含む数値の桁数です。D は、小数部 ,[D 等しい場合、整数部は 0 であり、最大値は 0.99

  • # Float(2,1) --

    は 1 つの整数と 1 つの小数を表し、 eg:1.1

  • ## Float(1,2) --
  • 構文エラー、

    1 桁のみ 方法2 小数点以下の桁数を指定することは可能ですか

    ## デフォルト値について:

デフォルト値は関数や式ではなく、一定のライトである必要があります。例外:
    TIMESTAMP
  • のデフォルト値は使用できます CURRENT_TIMESTAMP

    BLOB および TEXT
  • デフォルト値を設定できません
  • 列にデフォルト値が明確に示されていない場合:

データベースが
    strict モードの場合
  • モードの場合、エラーが報告されます

    モードが
  • strict モード
  • モードではない場合、システムは使用を確認します。型に応じて デフォルト値

  • 日付と時刻の形式:

時刻の値を表す日付と時刻の型は datetime ( DATATIME) 、日付 (DATA)、タイムスタンプ (TIMESTAMP)、時刻 (TIME)、年 (YEAR)。

DATATIME 範囲: '1000-01-01 00:00:00'

'9999-12-31 23 :59:59'. データ範囲: '1000-01-01'

'9999-12-31'# # TIMESTAMP 範囲: '1970-01-01 00:00:01' UTC から

'2038-01-19 03:14:07'

TIME 範囲:'-838:59:59' から

'838:59:59'

<p> YEAR 範囲: year(4) --- 1901~2155; year(2) --- 00~99</p> <p> TIMESTAMP: タイムスタンプ列は DATETIME 列と同じ形式で表示されます。つまり、表示幅は 19 文字に固定され、形式は「YYYY-MM-DD HH:MM:SS」になります。 </p> <p> TIMESTAMP データ型は、<span style="color: rgba(0, 0, 255, 1)">自動初期化と更新</span>を提供します。ただし、デフォルト値を持つ列は 1 つだけあり、CURRENT_TIMESTAMP</p> <p> として指定された更新が可能です。1. 自動初期化と自動更新 例: ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP</p> <p> 2. 自動初期化のみ。例: : ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP</p> <p> 3. 自動更新のみ、例: ts TIMESTAMP DEFAULT 0 ON UPDATE CURRENT_TIMESTAMP</p> <p> 4. なし、例: ts TIMESTAMP DEFAULT 0</p> <h1>文字列型: </h1> <p class="sen_2"> 文字列タイプは、CHAR、VARCHAR、BINARY [バイナリ データ タイプ]、BLOB、TEXT [テキスト タイプ]、ENUM [列挙タイプ]、および SET [データ コレクション] です。 </p> <p class="sen_2"> char と varchar の違い: ストレージ長の違いは、最大長とスペースを保持するかどうかにあります。</p> <p class="sen_2">Char はスペースを保持しますが、varchar はスペースを保持しません</p> <p class="sen_2"><span style="color: rgba(255, 0, 0, 1)">char は 0 ~ 255、varchar は 0 ~ 65535</span></p> <p class="sen_2"><span style="color: rgba(255, 0, 0, 1)"> <img src="https://img.php.cn/upload/article/000/000/052/abbcd334e0a9babc82ffd8a51c79262b-4.jpg" alt=""></span></p> <p class="sen_2"><span style="color: rgba(255, 0, 0, 1)">## ENUM: <span style="color: rgba(255, 0, 0, 1)"></span></span> 列挙は、テーブルの作成時に列仕様に許可される値を明示的に列挙するリストから値を選択する文字列オブジェクトです。 [<span style="line-height: 1.5">挿入された値がリストの値と一致しない場合、デフォルトは最大インデックス値です]<span style="color: rgba(255, 0, 0, 1)"></span></span></p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"> , ,</pre><div class="contentsignin">ログイン後にコピー</div></div><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="programlisting">numbers ENUM(&amp;#39;0&amp;#39;,&amp;#39;1&amp;#39;,&amp;#39;2&amp;#39;)</pre><div class="contentsignin">ログイン後にコピー</div></div><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="programlisting">mysql&gt; INSERT INTO t (numbers) VALUES(2),(&amp;#39;2&amp;#39;),(&amp;#39;3&amp;#39;);mysql&gt; SELECT * FROM t;+---------+ | numbers | +---------+ | 1 | | 2 | | 2 | +---------+</pre><div class="contentsignin">ログイン後にコピー</div></div></p><p class="sen_2"># SET: <span style="line-height: 1.5"><span style="line-height: 1.5"></span>セットは、0 個以上の値文字列を持つことができるオブジェクトであり、テーブルの作成時に指定された値を許可するには、それぞれの値文字列をリストから選択する必要があります。 [</span>挿入された値がリストの値と一致しない場合、MYSQL はリストに存在しない値を無視します<span style="line-height: 1.5">]<span style="color: rgba(255, 0, 0, 1)"></span><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">1 CREATE TABLE myset (col SET(&amp;#39;a&amp;#39;, &amp;#39;b&amp;#39;, &amp;#39;c&amp;#39;, &amp;#39;d&amp;#39;));2 3 INSERT INTO myset (col) VALUES (&amp;#39;a,d&amp;#39;), (&amp;#39;d,a&amp;#39;), (&amp;#39;a,d,a&amp;#39;), (&amp;#39;a,d,d&amp;#39;), (&amp;#39;d,a,d&amp;#39;);</pre><div class="contentsignin">ログイン後にコピー</div></div>

からわかります。 ENUMの定義 SETとの違いは、値が定義時に指定した値の1つ以上であるかどうかです。挿入された値がリストに存在しない場合の動作も異なります。

#その他の関連する無料学習の推奨事項:

mysql チュートリアル(ビデオ)

以上がmysqlのデータ型とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート