RE: [SQL] Typecasting in SQL functions

From: "Jackson, DeJuan" <djackson(at)cpsgroup(dot)com>
To: Konstantinos Vassiliadis <vassilik(at)p22(dot)cs(dot)man(dot)ac(dot)uk>, pgsql-sql(at)postgreSQL(dot)org
Subject: RE: [SQL] Typecasting in SQL functions
Date: 1998-07-15 17:43:46
Message-ID: F10BB1FAF801D111829B0060971D839F33315F@cpsmail
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

You might want to add a space before the '$'. '=$' is a valid Postgres
operator so it thinks of it as one token.
-DEJ

> -----Original Message-----
> From: Konstantinos Vassiliadis [SMTP:vassilik(at)p22(dot)cs(dot)man(dot)ac(dot)uk]
> Sent: Tuesday, July 14, 1998 7:34 AM
> To: pgsql-sql(at)postgreSQL(dot)org
> Subject: [SQL] Typecasting in SQL functions
>
> Hi,
> I have the following
>
> create table reference
> (author text,
> journal text);
>
> create table subref
> (ref reference);
>
> I want to insert a tuple into relation 'subref'. I spotted in the
> mailing
> list that Nicolas Caillaud created a function to insert values to his
> relation 'book' so I thought I tried the same
>
> create function add_ref(text,text) returns reference
> as 'select * from reference
> where author=$1 and journal=$2'
> language 'sql';
>
> I get the following
> ERROR: There is no operator '=$' for types 'text' and 'int4'
> You will either have to retype this query using an explicit
> cast,
> or you will have to define the operator using CREATE OPERATOR
>
> Obviously it confuses author=$1...
> I have looked at the documenation (Ch 4. 'Extending SQL Functions'
> PostgreSQL Programmer's Guide) where they typecast for the function
> new_emp().
>
> I have tried
> <same query>
> where author=::$1...
>
> and get the same error message.
>
> Can somebody help me on typecasting?
>
> Kostas Vassiliadis
>
>

Browse pgsql-sql by date

  From Date Subject
Next Message Neil Burrows 1998-07-15 19:41:44 Restricting number of entries returned
Previous Message Brook Milligan 1998-07-15 17:21:35 limitations of views?