MySQL では、char、varchar、text の各タイプのフィールドはすべて文字タイプのデータの格納に使用できます。char と varchar はどちらも最大文字長を指定できますが、text では指定できません。 データの保存方法や取得方法も異なります。 データ取得効率は次のようになります: 具体的な指示: char:固定長データを格納するのに非常に便利です。CHAR フィールドのインデックスは非常に効率的です。長さは括弧で定義する必要があり、デフォルト値を持つことができます。たとえば、char(10) を定義すると、格納するデータが 10 バイトに達するかどうかに関係なく、10 バイトのスペース (自動的にスペースで埋められます) が占有され、検索時に末尾のスペースは非表示になります。したがって、取得したデータ内のスペースをフィルター処理するには、trim などの関数を使用することを忘れないでください。 varchar:可変長データを格納しますが、ストレージ効率は CHAR ほど高くありません。長さは括弧で定義する必要があり、デフォルト値を持つことができます。データを保存するときに、スペースの自動補完は実行されず、データ内にスペースがある場合、値の保存および取得時に末尾のスペースは保持されます。さらに、varchar 型の実際の長さは、その値の実際の長さ + 1 です。このバイトは、実際に使用された長さを保存するために使用されます。 text:最大長 2^31-1 文字の可変長の非 Unicode データを格納します。テキスト列にはデフォルト値を設定できません。保存または取得時に大文字と小文字の変換は行われません。後で長さを指定してもエラーは報告されませんが、この長さは影響しません。つまり、データを挿入するときに、指定した長さを超えていても正常に挿入できます。 ストレージスペースについて: UTF8 文字セットを使用する場合、MySQL マニュアルでは次のように説明されています。
結論は: 1. 頻繁に変更されるフィールドには varchar を使用します。 2. 固定長がわかっている場合は、char を使用します。 3. 255 バイトを超えるデータの場合、varchar または text のみ使用できます。 4. varchar が使用できる場所ではテキストを使用しないでください。 5. 数値フィールドを使用できる場合は、文字列型ではなく数値型を使用するようにしてください。これにより、クエリと接続のパフォーマンスが低下し、ストレージのオーバーヘッドが増加します。これは、クエリと接続を処理するときにエンジンが文字列内の各文字を 1 つずつ比較し、数値型の場合は 1 回の比較だけで十分であるためです。 6. 同じテーブルに複数の大きなフィールドがある場合は、可能であればそれらをマージしてみてください。マージできない場合は、テーブルを分割することを検討してください。理由については、「InnoDB テーブル内の BLOB 列と TEXT 列のストレージ効率の最適化」を参照してください。 要約する 以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。 以下もご興味があるかもしれません:
|
>>: 携帯電話番号の歩数記録を取得するWeChatアプレット
Linux に MySQL をインストールする方法をオンラインで検索すると、多くの方法が表示されまし...
1. はじめにLinux でファイルの作成時刻が見つかるかどうかは、ファイル システムの種類によって...
任意のウェブページを開きます。例: http://www.baidu.com/ ブラウザのタブのヘッ...
Linux の ps コマンドは Process Status の略です。 ps コマンドは、システ...
これら 2 つの属性はよく使用されますが、その違いはまとめられていません。それでは、その使い方をまと...
ハッシュモード(デフォルト)動作原理:ウェブページのハッシュ値の変化を監視する—> onhas...
目次1. 背景2. バーチャルリストとは何か3. 関連概念の紹介4. 仮想リストの実装4.1 ドライ...
今日ログインページを書いていたとき、個人情報と携帯電話番号を認証する必要がありましたが、ページにボタ...
最近 Linux を研究していて、いくつかの Linux ディストリビューションを試してみましたが、...
この記事では、WeChatアプレットでビデオプレーヤーの集中砲火を実装するための具体的なコードを参考...
簡単です。チュートリアルを見てください。ブロガー1. まずdockerを起動するサービスdocker...
スクリプトを書く目的は、さまざまなサービスを手動で起動しなくて済むようにすることです(怠惰のためでも...
フォルダー内のすべての txt ファイルのファイル名の前に「gt_」を追加する必要があります。つまり...
最も人気のあるタグはIE8ですブラウザベンダーはバージョンアップデートのリリースに躍起になっている一...
公式サイトから MySQL をダウンロードしてインストールし、クライアントにログインするにはどうすれ...