2009-07-30 32 views
3

多くの企業がデータベーステーブルの接頭辞を使用しています。例えば。テーブルにはMS_Order、MS_Userなどの名前が付けられます。これを行う理由はありますか?データベーステーブル名の接頭辞

私が考えることができる唯一の理由は、名前の衝突を避けることです。しかし、それは本当に起こりますか? 1つのデータベースで複数のアプリケーションを実行していますか?それ以外の理由はありますか?

+0

オラクルの30文字の名前の制限に悩まされているときには、テーブルの前に置くことは余裕のない贅沢です。 – skaffman

答えて

1

SQL Server 2005以降スキーマ機能は、あらゆる種類のプレフィックスの必要性を排除します。彼らの使い方の良い例は、Schemas in AdventureWorksについて読むことで見つけることができます。

SQLサーバーの古いバージョンの中には、疑似名前空間を作成するための接頭辞を持つものが、テーブルがたくさんあるDBで役に立ちました。

それ以外は、私は本当にポイントを見ることができません。

+0

リンクをありがとう、面白いです。 "dbo"と "tempdb"という2つのスキーマしかありません(Sybaseは同じまたは類似の名前空間の規約を使用しています) – Roboprog

3

個人的には、私は値を見ません。実際は、すべてがMS_で始まるので、インテリセンスに似た機能のためにはうんざりです。 :) The Master agrees with me too

0

通常、異なるアプリケーションのテーブルを同じデータベース名前空間に配置するのは意味がないため、名前の衝突は見たことがありません。異なるアプリケーションに統合できる再利用可能なライブラリがあれば、それは理由かもしれませんが、そういうことは何も見ていません。

私はこれについて考えていますが、ごく少数のデータベースを作成することをユーザーに許可する安価なWebホスティングプロバイダがあるため、単一のデータベースを使用して多数の異なるアプリケーションを実行することが可能です。名前が衝突しない限り(そして、そのような接頭辞の表記は確かに助けになります)。

0

複数のアプリケーションが特定のテーブルを使用しています。プレフィックスは名前の衝突を防ぎます。また、テーブルをバックアップして同じデータベースに保持することも簡単になります。プレフィックスを変更するだけでバックアップが完全に機能するようになります。それ以外は単なる良い方法です。

2

大規模なスキーマには、多くの場合、類似しているが異なる目的のテーブルが多数あります。従って、様々な「セグメント化された」命名規則。

ダーンは、

0

接頭辞:-)最初のポストを取得できませんでしたSQLオブジェクトが同じデータベースにどのアプリ際に複数のアプリケーションのディップに関連付けられているかを並べ替えるための良い方法です。

セキュリティの管理を容易にするために、同じアプリケーション内で別々にSQLオブジェクトの接頭辞を付けました。つまり、admin_を持つすべてのオブジェクトにこのセキュリティーを適用する必要があり、残りのものには別のものが必要です。

接頭辞は、人間、検索ツール、およびスクリプトにとって便利です。しかし、状況が単純なものであれば、まったく役に立たないかもしれません。

0

これは、複数のアプリケーションが1つのデータベースを共有している場合に最もよく使用されます。たとえば、Wordpressをインストールすると、すべての表の前に「wp_」という接頭辞が付きます。これは、アプリケーションでデータを非常に簡単に共有したい場合などに便利です(会社のすべてのアプリケーションにまたがるセッション)。

これを実行するより良い方法がありますが、自己完結型のデータベースです。

1

データベースに1つのアプリケーションのみが含まれている場合でも、プレフィックスは、アプリケーションの同じ部分をまとめてグループ化する場合に便利です。 cutomer情報を含むテーブルにはcust_という接頭辞が付き、倉庫情報を含むテーブルにはinv_(在庫用)の接頭辞が付き、finacial情報を含むテーブルにはfin_などの接頭辞が付くことがあります。

1

私は、別の会社によって作成および管理されていたアプリケーション用の既存のデータベースがあり、大量の同じデータを少数の追加で使用する別のアプリケーションを追加する必要があるシステムで作業しました私たち自身のテーブルなので、その場合には、アプリケーション固有のプレフィックスを持つことで分離が助けになります。

私は、データベースがテーブルが保持しているデータの種類を示すためにプレフィックスを使用するのを見てきました。ルックアップテーブルのプレフィックスは、サイズと内容の両方でかなり静的であり、可変データを含むテーブルの別のプレフィックスになります。これは、ロギング、処理された注文、顧客取引などに追加されますが、実際には変更されない表のプレフィックスを1つにすることに壊れている可能性があります。リンクテーブルには、それらを区切るための独自の接頭辞も付けることができます。

関連する問題