Overloading || ( text,text ) operator - Mailing list pgsql-general

From trisuresh@yahoo.co.in (Suresh Tri)
Subject Overloading || ( text,text ) operator
Date
Msg-id a8de98e.0409030549.78dbcba1@posting.google.com
Whole thread Raw
Responses Re: Overloading || ( text,text ) operator  (Richard Huxton <dev@archonet.com>)
List pgsql-general
Hi,

I was trying to overload concat operator ||(text,text) such a way that
it behaves like Oracle. i.e. I want 'abc' || null to return 'abc'
instead of null.
I know that it is not the expected  behaviour in postgres, but since I
am migrating the database from oracle to postgres , I need this
behaviour.

But when I try to drop the existing || operator, I get the following
error
ERROR:  cannot drop operator ||(text,text) because it is required by
the database system

Also I cannot modify the application which runs over the database.
Hence I cannot overload || (varchar,varchar) and use it.

Is there any way of overloading the || operator , such that it behaves
like Oracle? ( I know that Oracle behaviour is wrong , but my aim is
to move an existing application which runs on Oracle to Postgres :-(
)

Thanks,
Abhiman

pgsql-general by date:

Previous
From: Frank Knobbe
Date:
Subject: Re: postgres "on in the internet"
Next
From: Shelby Cain
Date:
Subject: pl/pgsql exceptions