2011-06-28 40 views
31

Tengo que escribir una secuencia de comandos SQL que crea a la vez una nueva base de datos Y un nuevo esquema de en la base de datos que acaba de crear.PostgreSQL: Crear esquema en la base de datos específica

¿Cómo puedo hacerlo? ¿Puedo de alguna manera cambiar la base de datos actual a la nueva? ¿O puedo de alguna manera especificar la base de datos para CREATE SCHEMA?

estoy usando PostgreSQL 9.0

Respuesta

37

Puede conectarse a la base de datos y ejecutar la sentencia "CREATE SCHEMA". Eso debería dar como resultado un nuevo esquema en esa base de datos. No es tan difícil como piensas;) Cuando quieras hacer esto desde un archivo .SQL, puedes usar el comando \ connect como tal:

CREATE DATABASE foo; 
\connect foo; 
CREATE SCHEMA yourschema; 
+0

Lo sé. Pero, ¿cómo puedo hacerlo en el mismo archivo SQL que el que creó la base de datos con CREATE DATABASE? –

+0

Ajusté la pregunta para aclarar esto. –

+0

@Axel: se conecta a la base de datos. ¿No sabes cómo? Simple haz un 'pg_dumpall' y lee cómo lo hace. O use \ connect. Cualquiera. –

Cuestiones relacionadas