1. DATETIMEとTIMESTAMPの使用MySQL には、主に YEAR、TIME、DATE、DATETIME、TIMESTAMP など、時間と日付を表す多くのデータ型があります。 1. 類似点datetime と timestamp はどちらも、YYYY-MM-DDHH:MM:SS 年-月-日-時間-分-秒の形式でデータを表すことができます。 2. 相違点日時ストレージはタイムゾーンとは関係ありません (具体的には、日時は 1 つのタイムゾーンのみをサポートし、これは保存時の現在のサーバーのタイムゾーンです)。一方、タイムスタンプ ストレージはタイムゾーンに関連しています。 datetime と timestamp の精度は秒です。datetime はタイムゾーンに依存せず、広いストレージ範囲 (1001 ~ 9999) を持ちます。timestamp はタイムゾーンに関連しており、狭いストレージ範囲 (1970 ~ 2038) を持ちます。 3. 選択TIMESTAMP と DATETIME の間には、保存範囲と保存方法を除いて大きな違いはありません。もちろん、タイムゾーンをまたぐビジネスには TIMESTAMP の方が適しています。 2. varcharおよびtextデータ型の使用MySQL に文字列を保存する場合、char、varchar、または text 型を使用できます。 1. 類似点varchar と text はどちらも可変長文字列を格納でき、文字列の長さの上限は 65535 バイトです。 2. 相違点varchar は高速で、スペースを無駄にせず、末尾のスペースを処理せず、上限は 65535 バイトですが、ストレージの長さは 65532 バイトです。長さが 255 バイト未満の場合、長さを格納するために 1 バイトが使用されます。長さが 255 バイトを超える場合、長さを格納するために 2 バイトが使用されます。テキストで、可変長データを格納し、速度が遅く、スペースを無駄にせず、末尾のスペースを処理せず、上限が 65535 バイトで、データ長を格納するために余分なスペースを使用するため、65535 バイトすべてを使用できます。 TEXT 列にインデックスを配置することはできません (フルテキスト インデックスを除く)。テキストの場合、プレフィックス インデックスのみを追加でき、プレフィックス インデックスの最大サイズは 1000 バイトです。 テキストにはデフォルト値がありません varchar が特定の値より大きい場合、自動的にテキストに変換されます。一般的なルールは次のとおりです。 varchar(255)より大きい場合はtinytextになります varchar(500)より大きい場合はテキストになります varchar(20000)より大きい場合はmediumtextになります 3. 選択1. 頻繁に変更されるフィールドには varchar を使用します。 2. 固定長がわかっている場合は、char を使用します。 3. 255 バイトを超えるデータの場合、varchar または text のみ使用できます。 4. varchar が使用できる場所ではテキストを使用しないでください。 5. 数値フィールドを使用できる場合は、文字列型ではなく数値型を使用するようにしてください。これにより、クエリと接続のパフォーマンスが低下し、ストレージのオーバーヘッドが増加します。これは、クエリと接続を処理するときにエンジンが文字列内の各文字を 1 つずつ比較し、数値型の場合は 1 回の比較だけで十分であるためです。 6. ストレージ エンジンが CHAR と VARCHAR の選択に与える影響: MyISAM ストレージ エンジンの場合、可変長データ列ではなく固定長データ列を使用するのが最適です。これにより、テーブル全体が静的になり、データの取得が高速化され、スペースを節約して時間を節約できます。 InnoDB ストレージ エンジンの場合、InnoDB データ テーブルのストレージ形式では固定長と可変長が区別されないため、可変長データ列を使用するのが最適です。したがって、CHAR を使用することは、必ずしも VARCHAR を使用するよりも優れているわけではありません。ただし、VARCHAR は実際の長さに従って格納されるため、スペースを節約でき、ディスク I/O と総データ ストレージに適しています。 これで、MySQL での日付と時刻の型と文字列型の選択に関するこの記事は終了です。MySQL での日付と時刻の型と文字列型の選択に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: 純粋な CSS3 を使用して、円の動的な光る特殊効果アニメーションを実装するためのサンプル コード
>>: Vueコンポーネントの7つの通信方法についての深い理解
Autotrash は、古い削除済みファイルを消去するプロセスを自動化するコマンド ライン プログラ...
ビジネス ソーシャル ネットワーキング サイト LinkedIn は最近、ナビゲーション バーとユー...
ORM とは何ですか? ORM は Object Relational Mapping の略で、オブ...
一般的なゲストブック、フォーラムなどでは、テキスト入力ボックスが使われています。これは HTML 言...
Linux システム管理者にとって、サービスがポートに正しくバインドされているか、またはポートをリッ...
•CSSには多くのセレクターがあります。複数のセレクターを同じ要素に適用するとどうなるでしょうか? ...
目的: 1. Alibaba Cloud Serverを介してサーバーの外部ネットワークをマッピング...
イベントバブリング、イベントキャプチャ、イベント委任JavaScript では、イベント委譲は非常に...
最近、プロジェクトで nginx を使用し、バックエンドで Java を使用しました。バックエンドで...
序文デフォルトでは、Nginx ログはファイルに書き込まれます。各ドメインのログを区別するために、通...
1. サブクエリMySQL 4.1以降はサブクエリをサポートしていますサブクエリ:別のクエリ内にネス...
フロントエンド開発者としては、IEの落とし穴は避けて通れません。他のブラウザはいいのにIEは壊れてい...
通常のプロジェクトでは、1 回の入札で同時にデータを更新および照会する必要があるという問題によく遭遇...
方法1: 値を追加する公式の説明を見るには MDN にアクセスしてください。優先度はどのように計算さ...
<input> はユーザー情報を収集するために使用され、終了ステートメントはありません。...