2012-03-29 13 views
5

SQLテーブル名に数字を使用でき、最初でない限り使用できることは明らかです。 (副作用の1つについてここに議論があります:SQLite issue with Table Names using numbers?) 私がターゲットとしているデータベースはOracle 10g/11gです。SQLテーブル名に数値を含めることをお勧めしますか?

レポートデータベースを設計していますが、数字の後に名前が付けられたレポート( 'パート45'、 '102S'、 '401')を記述することで、エンティティの名前を明確にするのが最も効果的です。ビジネスドメイン言語だけです。これらのレポートは他の名前では一般的には参照されません。モデリングしているエンティティは、このように名前が付けられています。

私の質問は、テーブル名に数字を入れれば、メンテナンスやプログラマビリティに問題がありますか?私はいつもデータベースの周りの付随的なソフトウェア、ドライバー、非プレーンバニラの名前でうまくいっていないETLコードについて心配しています。しかし、このビジネスドメインの明瞭度には本当のメリットがあります。だから私はただ気が狂っていますか?

私の質問は簡単です:PART_45_AUDITのようなテーブル名を除外するような「落書き」やコーナーケースはありますか?

+2

私は考えることはできません。 –

+0

頻繁に遭遇することはありませんが、数値はさまざまな方法で大きなデータベースを助けます。多くの人が「敢えて」使っているわけではありません。 – NoChance

答えて

7

PART_45_AUDITが本当にモデル化しているエンティティ(これは非常にまれである)の説明である場合、名前の真ん中に数字を持つことには問題はありません。名前の前に数字を置くと、二重引用符で囲まれた識別子を使用する必要があり、二重引用符で囲まれた識別子を完全にサポートしないツールがたくさんあるので、別の話になります。もちろん、テーブルを参照するたびに二重引用符を入力する必要はありません。

CREATE TABLE "102S" (
    col1 number 
); 

SELECT * 
    FROM "102S" 
+0

ありがとうございます。うん、PART_45_AUDITは私を名前として不快にさせますが、私は自分の会社のスラングを上書きすることはできません。より一般的な名前を代用しようとすると、いつも混乱の原因となります。 – deepgeek

関連する問題