Bevor ich erkläre, wie das geht, würde ich stark vorschlagen, das NICHT zu tun.
In PostgreSQL, wenn Tabellen- oder Spaltennamen nicht aufgelistet sind, wie:
%Vor%Sie werden automatisch zuerst nach Kleinbuchstaben gefaltet, also ist obige Abfrage identisch mit:
%Vor%Wenn Sie alle Namen in Großbuchstaben konvertieren möchten, funktioniert diese Anweisung NICHT :
%Vor%Sie müssen jeden einzelnen Namen in dieser Abfrage doppelt angeben, damit er funktioniert:
%Vor%Wenn Sie andererseits die standardmäßige PostgreSQL-Kleinschreibung verwenden, können Sie eine beliebige Kombination von Groß- und Kleinbuchstaben verwenden, die solange funktioniert, wie Sie keinen Namen angeben.
Wenn Sie immer noch darauf bestehen, in Großbuchstaben zu konvertieren, können Sie dies tun, indem Sie Ihr Datenbankschema mit pg_dump --schema-only
.
Nachdem Sie dies getan haben, überprüfen Sie alle CREATE TABLE
Anweisungen und konstruieren Sie geeignete ALTER TABLE
Anweisungen basierend auf diesem Dump - Sie müssen ein Skript schreiben ( Perl oder Python), um das zu tun.
Alternativ können Sie INFORMATION_SCHEMA.TABLES und / oder INFORMATION_SCHEMA.COLUMNS und auch entsprechende ALTER TABLE
-Anweisungen erstellen und ausführen.
Tags und Links postgresql postgresql-9.2