Обсуждение: sql scripts
I am new to postgres and your mailing lists, please let me know if I am posting in the wrong list. I am working on creating my first database in Postgres. In the script that will create all the tables for the firs time, I would like to have a conditional statement to delete a table, if it already exists. I know the other databases create such a condtional statement for you when you export the schema. What would such a conditional statement look like in Postgres's sql? sam
On Sat, 18 Oct 2003, Sam Carleton wrote: > I am working on creating my first database in Postgres. In the > script that will create all the tables for the firs time, I would > like to have a conditional statement to delete a table, if it > already exists. As far as I know, there is no way to do that in PostgreSQL's standard SQL language. But it doesn't matter -- as long as the DROP TABLE command is in it's own transaction, you can unconditionally drop the table and ignore any errors. Regards, David.
If it's a bash script you could use: ##### SomeTable=<Table you're about to create> TableTest=$(psql -d <your new db> -U <its owner> -ntc "select relname from pg_class where relname='$SomeTable'") [[ -n "$TableTest" ]] && psql -d <your new db> -U <its owner> -nc "drop table $SomeTable" ##### It's not quite "in postgres's sql", but it could get the job done >-----Original Message----- >From: Sam Carleton [mailto:ehc@linux-info.net] >Sent: Saturday, October 18, 2003 22:37 >To: pgsql-admin@postgresql.org >Subject: [ADMIN] sql scripts > > >I am new to postgres and your mailing lists, please let me know if I >am posting in the wrong list. > >I am working on creating my first database in Postgres. In the >script that will create all the tables for the firs time, I would >like to have a conditional statement to delete a table, if it >already exists. I know the other databases create such a condtional >statement for you when you export the schema. What would such a >conditional statement look like in Postgres's sql? > >sam > >---------------------------(end of >broadcast)--------------------------- >TIP 3: if posting/reading through Usenet, please send an appropriate > subscribe-nomail command to majordomo@postgresql.org so that your > message can get through to the mailing list cleanly >
Use pg_dump -c
this will drop the db objects before creating them
Priya
Fretting that your Hotmail account may expire because you forgot to sign in enough? Get Hotmail Extra Storage today!