これを行う方法を説明する前に、強く そうしないことをお勧めします。
PostgreSQLでは、次のようにテーブル名または列名が引用符で囲まれていない場合:
SELECT Name FROM MyTable WHERE ID = 10
実際には自動的に小文字に折りたたまれます まず、上記のクエリは次と同じです:
SELECT name FROM mytable WHERE id = 10
すべての名前を大文字に変換する場合、このステートメントは機能しません :
SELECT NAME FROM MYTABLE WHERE ID = 10
このクエリを機能させるには、このクエリのすべての名前を二重引用符で囲む必要があります。
SELECT "NAME" FROM "MYTABLE" WHERE "ID" = 10
一方、標準のPostgreSQL小文字のみの契約を使用する場合は、任意の大文字と小文字の組み合わせを使用でき、名前を引用しない限り機能します。
それでも大文字に変換する必要がある場合は、 pg_dump --schema-only
。
それが終わったら、すべての CREATETABLE<を確認します。 / code>
ステートメントを作成し、適切な ALTER TABLE
を作成します
このダンプに基づくステートメント-これを行うには、スクリプト(PerlまたはPython)を作成する必要があります。
または、INFORMATION_SCHEMA.TABLES
を読むこともできます。 および/または ALTER TABLE
を作成して実行します ステートメント。