Thanks but I don't have text type in my table.

sysdb=# \d changelogtest
...
                               Table "sysdb.changelogtest"
     Column     |            Type             |                Modifiers
----------------+-----------------------------+------------------------------------------
 id             | integer                     | not null
 txid           | integer                     | not null default
txid_current()
 txtime         | timestamp without time zone | not null default
transaction_timestamp()
Foreign-key constraints:
    "changelogtest_id_fkey" FOREIGN KEY (id) REFERENCES logtable(id)
Moreover, the query behaves differently when I proive brackates after SELECT
in second query.

techdb=# INSERT INTO changelogtest (id, txid, txtime) values (5, 123, 'now')
except select id, txid, txtime
from changelogtest
where id=5;
ERROR:  EXCEPT types text and timestamp without time zone cannot be matched
LINE 2: except select id, txid, txtime
                                ^
techdb=# INSERT INTO changelogtest (id, txid, txtime) values (5, 123, 'now')
except select (id, txid, txtime)
from changelogtest
where id=5;
ERROR:  each EXCEPT query must have the same number of columns
LINE 2: except select (id, txid, txtime)
                      ^
Below works:

techdb=# INSERT INTO changelogtest (id, txid) values (5, 123)
except select id, txid
from changelogtest
where id=5;
INSERT 0 0
I don't know how to resolve my issue. Could you please help me out.

Thanks,
Dipti


On Fri, Apr 23, 2010 at 4:08 PM, Raymond O'Donnell <r...@iol.ie> wrote:

> On 23/04/2010 11:31, dipti shah wrote:
>
> > ERROR:  EXCEPT types text and timestamp without time zone cannot be
> matched
> > LINE 2: except select id, txid, txtime
>
> Try adding a cast to one of them.
>
> Ray.
>
>
> --
> Raymond O'Donnell :: Galway :: Ireland
> r...@iol.ie
>

Reply via email to