ホームページ > データベース > mysql チュートリアル > mysqlの自動インクリメントは何に役立ちますか?

mysqlの自動インクリメントは何に役立ちますか?

little bottle
リリース: 2020-09-16 17:35:48
オリジナル
6352 人が閲覧しました

データベースのテーブル設計では、「自然キー」と「代理キー」の選択に苦労します。データを「ソフト削除」する場合、自然キーの実装はさらに複雑になります。一部の自然キーはキー値によって引き起こされます。長すぎるか複数の列の組み合わせであるため、テーブルの主キーとしては適していません。より一般的な 2 つの代理キーは、自動インクリメント列とグローバル一意識別列 (GUID) です。次に、自動インクリメントキーについて説明します。

mysqlの自動インクリメントは何に役立ちますか?

Mysql は、データベースによって提供される自動インクリメント数値フィールドを自動インクリメント主キーとして使用します。

利点:

(1) データベースは自動的に番号付けされ、高速で段階的に増加します。順番に保存されるため、検索に非常に役立ちます。

(2) 数値型で、スペースをほとんど取らず、並べ替えが簡単で、プログラム内での転送に便利です;

(3) 非システム経由でレコードを追加する場合、このフィールドを指定する必要はなく、主キーの重複を心配する必要もありません。

利点について話した後は、欠点について話しましょう。実際、欠点は利点から生まれます。

欠点:

(1) 自動拡張のため、特にシステムが他のシステムと統合されている場合、指定した ID を持つレコードを手動で挿入するのが面倒になります。データをインポートする必要がある場合、元のシステムの ID が主キーと競合しないことを保証するのは困難です (古いシステムもデジタルである場合)。特に、新しいシステムがオンラインになると、古いシステムと新しいシステムが並行して存在し、データベースが異種混合になります。双方向の同期が必要な場合、主キーの自動インクリメントは悪夢になります。

(2 ) システム内 統合または切り替え中に、新旧システムの主キーの数値型が異なる場合、主キーのデータ型が変更され、これにより外部キーに関連付けられた他のテーブルも変更されます。結果も深刻になります;

(3) システムも数値である場合、インポート時に古いデータと新しいデータを区別するために、文字識別子 (「o」、「old」など) を追加することをお勧めします。 ) 古いデータの主キーの前にこれが古いデータであることを示し、その後に自動的に増加する数値が追加されます。

以上がmysqlの自動インクリメントは何に役立ちますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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