Antes de explicar cómo hacer esto, fuertemente sugiero NO hacer eso.
En PostgreSQL, si los nombres de tablas o columnas no están entre comillas, como:
SELECT Name FROM MyTable WHERE ID = 10
En realidad, automáticamente doblaron a minúsculas primero, por lo que la consulta anterior es idéntica a:
SELECT name FROM mytable WHERE id = 10
Si tuviera que convertir todos los nombres a mayúsculas, esta declaración NO funcionará :
SELECT NAME FROM MYTABLE WHERE ID = 10
Tendrá que poner comillas dobles en cada nombre de esta consulta para que funcione:
SELECT "NAME" FROM "MYTABLE" WHERE "ID" = 10
Si, por otro lado, usa el acuerdo estándar de solo minúsculas de PostgreSQL, puede usar cualquier combinación de mayúsculas y minúsculas y funcionará siempre que no cite ningún nombre.
Ahora, si aún insiste en convertir a mayúsculas, puede hacerlo volcando el esquema de su base de datos en un archivo usando pg_dump --schema-only
.
Después de hacer eso, verifique todo CREATE TABLE
declaraciones y construir ALTER TABLE
apropiados
declaraciones basadas en este volcado:tendrá que escribir algún script (Perl o Python) para hacerlo.
Alternativamente, puede leer INFORMATION_SCHEMA.TABLES
y/o INFORMATION_SCHEMA.COLUMNS
y también construya y ejecute ALTER TABLE
apropiado declaraciones.