Search Postgresql Archives

Re: [HACKERS] Updating column on row update

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





Tom Lane wrote:
[ thinks for awhile... ]  Actually, CREATE LANGUAGE is unique among
creation commands in that the common cases have no parameters, at least
not since we added pg_pltemplate.  So you could imagine defining CINE
for a language as disallowing any parameters and having these semantics:
	* language not present -> create from template
	* language present, matches template -> OK, do nothing
	* language present, does not match template -> report error
This would meet the objection of not being sure what the state is
after successful execution of the command.  It doesn't scale to any
other object type, but is it worth doing for this one type?

			


I seriously doubt it. The only reason I could see for such a thing would be to make it orthogonal with other CINE commands.

Part of the motivation for allowing inline blocks was to allow for conditional logic. So you can do things like:

   DO $$

   begin
       if not exists (select 1 from pg_tables where schemaname = 'foo'
   and tablename = 'bar') then
          create table foo.bar (x int, y text);
       end if;
   end;

   $$;


It's a bit more verbose (maybe someone can streamline it) but it does give you CINE (for whatever flavor of CINE you want), as well as lots more complex possibilities than we can conceivably build into SQL.

cheers

andrew


--
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux