非常に多くの企業のプロジェクトでは、テーブルを設計するときにテーブル名に接頭語を追加しますが、これは何の役に立つのでしょうか?プロジェクト全体を見ると、これが役に立つとは思いませんでした
天蓬老师2017-06-09 20:12:57
テーブル名の接頭辞は以前は一般的な方法でした。現在の傾向は、プレフィックスの追加によってもたらされる利点が問題に比べてはるかに小さいため、プレフィックスの追加を放棄することです。多くの場合、クロスデータベース設計はテーブル プレフィックス設計よりも柔軟で実用的ですが、プレフィックス設計によって引き起こされる混乱と問題 (特に混合状況で) は、多くの初心者にとって最大の問題です。ご注意ください。
大家讲道理2017-06-08 11:05:32
複数のプロジェクトを同じデータベースに入れると便利です
プロジェクト 1 ユーザー テーブル - p1_user
プロジェクト 2 ユーザー テーブル - p2_user
一度言えば分かります
淡淡烟草味2017-06-08 11:05:32
それは単なるデザインの習慣です。通常、同じライブラリ内の異なるシステム テーブルを区別するために作成されます。
写真に示すように、プレフィックスのないテーブルはバックグラウンド管理システムのテーブルです。 wmsプレフィックスが付いたテーブルはwmsシステムのテーブルです
代言2017-06-08 11:05:32
プレフィックスは、例えば、user
的表,直接show tables like '%user%'
就可以了,用mysql
コマンドライン
特に多くのプラグインやモジュールを含むプロジェクトの場合、これらの接頭辞を追加すると、データベース テーブルやその他の操作のバッチ処理にも役立ちます
phpcn_u15822017-06-08 11:05:32
テーブル名のプレフィックスは単なる命名規則であり、関数の実装には影響しません。
より複雑なシステムでは、テーブル名のプレフィックスによってテーブルのモジュールと分類を大まかに理解できるため、日常の開発や運用保守の際に便利と思われます。また、初心者がシステムのデータ構造を理解する際に従うべきルールもあります。
個人的にはこのアプローチに賛成です。コストは非常に低いですが、後の運用とメンテナンスに便利です。
黄舟2017-06-08 11:05:32
プロジェクトに 100 を超えるテーブルがある場合、それらを使用する必要がある理由が理解できるでしょう。
理想的には、user_tabel1 は user.table1 として書くことができます (複数のライブラリを作成するため)
問題は、多くの開発者は、多くのフレームワーク (1 つのライブラリにしか接続できない) を含め、単に追加、削除、変更、確認することしかデータベースを知らないことです
たとえば、Oracle の最も古典的な scott インスタンスには部門と部門担当者のリストがあり、hr (別のインスタンス) には部門のリストがあります。
hr インスタンスには部門のリストがあります。 scott.emp のリストには選択権限はありますが、更新権限はありません
個人的には、この設計によりデータのセキュリティが向上し (インスタンスが攻撃されてクラックされた場合に、すべてのデータが公開されることはありません)、論理的な明瞭さが大幅に向上すると感じています。また、開発者はデータベースをより深く理解し、熟知する必要があります
しかし、私たちがよく目にするのは、開発者のすべてのテーブルが 1 つのライブラリに配置されているということです
。