6

アプリケーション用のデータベースを作成するとき、データベース列の長さを制限しました。

例 -

  1. ストリング (200)
  2. 整数 (5)

スピードや何らかの効果に影響はありますか?

4

3 に答える 3

8

まず第一に、「データベース」の長さは制限されません。代わりに、データベース内のテーブルの列のサイズを制限します。

なぜこれを行うのですか?

  1. 決して使用しないデータのためにスペースを無駄にしたくありません (これが varchar や varbinary などの目的です)。
  2. 実際に使用する前にデータ構造を考える必要があるため、これはベスト プラクティスです。
  3. データが少ないほど、アプリケーションの処理は速くなります (これはトートロジーです)。
  4. 使用できるスペースが正確にわかっている場合は、データの検証が容易になります。
  5. サイズを制限すると、フルテキスト インデックスが大幅に増加します
于 2012-11-08T10:56:00.190 に答える
0

私が考えることができる理由の 1 つは、列のデータ型の長さを指定しなかった場合、MYsq​​l エンジンは、その中に格納される実際のデータの長さよりもはるかに大きいデフォルトの長さの値を想定することです。桁。そのため、列の長さプロパティを無視しないことが常にベスト プラクティスです。

于 2012-11-08T10:42:38.767 に答える
0

データベース フィールドの長さを制限すると、データの検証が保証され、指定された長さ以外の長さの予期しないデータが取得されることはありません。また、LONG などの特定のフィールドはインデックスを作成できないため、適切かつ賢明に選択してください。パフォーマンスに関しては、影響は無視できます。データ自体についても考慮する必要があります。たとえば、データを UTF-8 などの Unicode エンコーディングで保存すると、ストレージ要件が増加する可能性があります。

于 2012-11-08T10:50:30.660 に答える