Heikki Linnakangas wrote: > Tom Lane wrote: > > Heikki Linnakangas <[EMAIL PROTECTED]> writes: > >> The way we've solved this problem for other CREATE commands is to > >> add "OR REPLACE" option, instead of "IF NOT EXISTS". We should do > >> the same here. > > > > If we're willing to consider a solution that is specific to CREATE > > LANGUAGE (as opposed to implementing IF NOT EXISTS across-the-board, > > which might happen someday) what I'd suggest is just incorporating > > the behavior directly into the abbreviated (no parameters) form of > > CREATE LANGUAGE. If the language already exists and has the same > > properties specified in pg_pltemplate, don't raise an error. Give > > a notice maybe. > > Why not implement "OR REPLACE" like for other things? Still seems the > most consistent behavior to me. > > You might want to get the error if the language already exists, which > your proposal wouldn't allow. And it wouldn't help with languages > without a pg_pltemplate entry.
Even though I was the guy originally suggesting that Andreas put forward a patch for IF NOT EXISTS, now that it's being mention I agree with Heikki - it's more consistent. And I see the primary use as being in installation scripts for software that requires pl/pgsql (or any other PL), for which the exact syntax really doesn't matter - it's better to be consistent. If we're implementing IF NOT EXISTS across the board, let's do that for languages at the same time as for others. //Magnus -- Sent via pgsql-patches mailing list (pgsql-patches@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-patches