Re: BUG #13889: psql doesn't exequte correct script
От | Pavel Stehule |
---|---|
Тема | Re: BUG #13889: psql doesn't exequte correct script |
Дата | |
Msg-id | CAFj8pRBbeiHgX8A+QyqEAX5D70Mk+FBc__gmrADMA_3c2STbRQ@mail.gmail.com обсуждение исходный текст |
Ответ на | BUG #13889: psql doesn't exequte correct script (v_bilyak@mail.ru) |
Ответы |
Re[2]: [BUGS] BUG #13889: psql doesn't exequte correct script
|
Список | pgsql-bugs |
Hi 2016-01-25 18:09 GMT+01:00 <v_bilyak@mail.ru>: > The following bug has been logged on the website: > > Bug reference: 13889 > Logged by: Vladimir > Email address: v_bilyak@mail.ru > PostgreSQL version: 9.5.0 > Operating system: Windows 10 > Description: > > Hello. I faced the following issue: psql.exe does not execute the following > script > > DROP DATABASE "demo_crash"; > CREATE DATABASE "demo_crash"; > > aborting with error: > > CREATE DATABASE cannot be executed from a function or multi-command string > > I searched in Google for solution but found only suggestion to rebuild > Postgres with some fix in source code that is not acceptable in my case. Do > you have another suggestion how to resolve it? Thank you in advance for any > help! > It isn't bug. You probably use "-c" option. All statements executed by this option are executed in one transaction. Some statements like CREATE DATABASE or DROP DATABASE cannot be called from transaction. [pavel@dhcppc2 ~]$ psql -c "DROP DATABASE demo_crash; CREATE DATABASE demo_crash" postgres Debug assertions "off" ERROR: 25001: DROP DATABASE cannot be executed from a function or multi-command string LOCATION: PreventTransactionChain, xact.c:3158 Time: 0.488 ms The solution is in next release 9.6, that allows multiple -c options [pavel@dhcppc2 ~]$ psql -c "DROP DATABASE demo_crash" -c "CREATE DATABASE demo_crash" postgres Debug assertions "off" ERROR: 3D000: database "demo_crash" does not exist LOCATION: dropdb, dbcommands.c:797 Time: 0.399 ms CREATE DATABASE Time: 711.694 ms For current release use echo and pipe [pavel@dhcppc2 ~]$ echo "DROP DATABASE demo_crash; CREATE DATABASE demo_crash" | psql postgres Debug assertions "off" DROP DATABASE Time: 224.953 ms CREATE DATABASE Time: 742.695 ms I have not windows, but it should work Regards Pavel > > Sincerely, > Vladimir > > > -- > Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org) > To make changes to your subscription: > http://www.postgresql.org/mailpref/pgsql-bugs >
В списке pgsql-bugs по дате отправления: