web-dev-qa-db-ja.com

公式のPostgreSQL大文字表記法

DB、テーブル、フィールド名の大文字化に関する公式のPostreSQL規約はありますか?

公式サイトの例 は小文字と_単語の分離。このポリシーが公式であるかどうか疑問に思います。

CREATE TABLE films (
    code        char(5) CONSTRAINT firstkey PRIMARY KEY,
    title       varchar(40) NOT NULL,
    did         integer NOT NULL,
    date_prod   date,
    kind        varchar(10),
    len         interval hour to minute
);
14
Adam Matan

私は基本的にVeraceのコメントを反映してこれを述べ、それを準公式にします:

すべての状況を網羅するベストプラクティスは存在しません。以下では、次のことを前提としています(これを行っていない場合の対処方法)。

  • あなたはすでにこれについてチームと話し合っています(自分で作業している人はしばしば決断を下さなければなりません)
  • あなたのチームにはすでにSQLの正式なスタイル定義がありません(そうでなければ、私たちに尋ねることはないでしょう)
  • どのコードにも形式化されたスタイル定義はありません(他の言語に対してすでに確立されている同じ基本規則に従い、スタイルを形式化します)

残りはやや独断的ですが、経験に基づいています

  1. テーブル名に関しては
    1. 単一のエンティティ名を使用する必要があります(これによりドキュメントが簡単になります)
    2. ここでパスカルケースを使うべきです
  2. フィールド名に関しては
    1. フィールド名にキャメルケースを使用する
    2. 定義が複数形として明確に意味をなさない限り、短い単数形の名前を使用します(ほとんどしない)
  3. 独自の関数またはストアドプロシージャの名前になる場合
    1. Underscore_separationを使用する
    2. パラメータ化にフィールド名を使用する
  4. 組み込みのデータベース関数または言語名(SELECTなど)に関しては、
    1. 特定の方法で大文字にする必要がない限り、すべて大文字を使用します
    2. 自分の言語のAPIを知って、合理的または必要なものを知る
  5. 間隔に関しては
    1. 多くの人々は、キーワードには列の配置を使用し、キーワードではないものにはインデントを使用します
    2. 多くの人は、フィールドが各行で区切られている場合、行の先頭でコンマを使用します(これにより、選択リストから特定のフィールドをコメントアウトしやすくなります)
    3. 戻り値のヘッダーであっても、名前の一部としてスペースを使用しないでください。
  6. 句読点になると
    1. 括弧-それらを使用します。彼らは無料です。約束します。
    2. セミコロン-それらを使用します。彼らはあなたを壊すつもりはありません。彼らはあなたにあなたのコードを考えさせることを強います。そしてそれらは良い衛生状態です。
    3. キャリッジリターン-もう一度、無料です;-)そして、コードを読みやすくします。

また、私が一般的なスタイルガイドを適用する手助けをしている間、Postgresのコミュニティは通常camelCaseやPascalCaseを使用せず、代わりにunderscore_separationを使用していることも認識しておく必要があります。 本当に重要なビットは、一貫性を保つためにどこでも特定のスタイルを確立して使用することを保証します

21
jcolebrand

簡単なGoogleは、ベストプラクティスを示す多くのサイトを明らかにします。私は2つだけ言います-しないでください[〜#〜] [〜#〜]スペースを使用します "My Table Name"(移植が不可能になります)エスケープメカニズムが異なるため、英数字以外の文字についても同様です)。この種のメカニズムでは、通常、ケースも尊重する必要があります。英語(または自分の言語)で十分な文字と単語があり、識別子の長さが十分に長い(私は、identifier_length <32、PostgreSQLが64であるシステムを知りません)。また、同じことを行うSQLキーワード(RDBMSによって異なる)を使用しないでください。

のようなステートメント

SELECT "Field" FROM "Table";

有効にできます!絶対に重要なことは、明確で比較的単純な規則を設け、それを守ることです。あなたが知るように人々は異なる意見を持っています-トピックを読んで、あなたにとって「正しいと思う」ものを選びます。これらのサイトを参照してください 12 、、 45 ,. 。(もっとたくさんあります)。

4
Vérace