2009-08-22 9 views
4

私が作業した最後の2つのコードベースですべてのテーブルを飾るtbl_プレフィックスがあります。アプリケーション開発者やデータベース管理者にとって便利な理由は考えられません。tbl_Product、tbl_Order命名規則の目的は何ですか?

DBAは、どのオブジェクトがテーブルであるかを確認する必要がある場合、DMVまたはマスター権利のスキーマテーブルに常に参加できますか?私はプログラマにとってどちらが役に立つのか、プロジェクトがORMツールを使用しているのかどうかを考えることはできません。

まだ保存されているプロクセスを書いている間でさえ、彼らはちょうど途中に入るようです。

どのように彼らは非主観的な方法で彼らが役に立つと説明できますか? Ex(tbl_はxタスクを実行するのに役立ちます)

答えて

5

私は同じことを何度も繰り返し聞いたことがあります。なぜなら、それはオブジェクトの種類を知る助けになるからです。

クエリ内では、プレフィックスを使用すると、ビューをテーブルから分離するのに役立ちますたとえば、。

私は本当にそれに同意しません。データベーススキーマに慣れた後、プレフィックスは冗長化され、冗長なものすべてで発生するため、非同期化または変更を難しくする可能性があります。

たとえば、何らかの理由で2つのテーブルに分割する必要があるテーブルがあるとします。 元のテーブルをエミュレートするビューを作成して、2つの新しいテーブルからデータを選択するとします。

コードベース全体の名前を変更する予定ですか、tbl_という接頭辞を付けたビューを使用していますか?

私のポイントはデータベースオブジェクト名ではありません。には型を推測するための接頭辞がありません。

3

私は多くの利点を考えることはできません。

select post.id, post.subject, post.body from tbl_post post where post.author="eric" 

変数を簡単にすることができます。そうでなければ、これはあなたがMS Access上でデータベースを学んだ人々を扱ってきたように見えます。

3

これはhungarian notationであり、誤って使用されています。元々の使用は、変数の接頭辞としての使用のいくつかの重要な側面を置くことでした。テーブルがテーブルであるという事実は、ハンガリーの表記法を使用するのに便利な方法ではありません。

ASPでは、VBSCriptにはバリアントしかないため、ハンガリー表記を使用してデータ型を指定します。私は、ASPプログラマがこれをデータベースのテーブルやフィールドにも適用しているのを見てきました。これは、この誤用が使用される1つの方法です。

2

ビューの利点の1つは、ビュー、表、マテリアライズド・ビューの違いです。もちろん、コードを書くときはこれは重要ではありません。問題を維持しています。誰かがビューから抜け出していることを認識すると、コードを最適化することができます。ビューに基づくビューに基づくビューは、非常に非効率的である可能性があります。接頭辞tbl_またはview_がなければ、これが起こっているかどうかを知ることはより難しいかもしれません。

1

Entiry FrameworkなどのORMを使用すると、マッピングがどちらの側でテーブルを扱っているのか、どちら側がオブジェクト(エンティティ)を扱っているのかがわかりやすくなると思います。私のtbl_Employeeは、例えばEmployeeにマップされています。混乱の層を混乱させる方法はありません。

関連する問題