JT Kirkpatrick ha scritto:
> hi, i'm using access97 linked to postgres(6.4.2) tables through the new
> v.6.4 odbc. i can open a form, it shows me data for an initial record, and
> then bombs. here is the message in the log file -- i can't figure out why
> it is bombing. does anyone have a clue?? do those "-" or "/" in various
> "vinvnum" fields cause problems?? it shows valid data first, waits for a
> second, and then bombs!
>
I had a similar error when I tried to order retrieved data by a field not in
the table or a calculated field.
Seems that Access request an order by a field with an unknown type.
I can emulate a similar message as:
select 'AAAAAA' union select 'ZZZZZZ' order by 1 asc;
ERROR: Unable to identify a binary operator '>' for types unknown and unknown
select 'aaaaaa' union select 'zzzzzz' order by 1;
ERROR: Unable to identify a binary operator '<' for types unknown and unknown
May be we need a default for UNKNOWN types (what do you think Thomas, if we
make unknown type = text type?)
Any way. Try these functions:
create function unknown_lt(unknown,unknown) returns bool as
'declare i1 text; i2 text;
begin i1:= $1; i2:= $2; return (i1 < i2);
end; ' language 'plpgsql';
CREATE
create operator < ( leftarg=unknown, rightarg=unknown, procedure=unknown_lt, commutator='<',
negator='>=', restrict=eqsel, join=eqjoinsel );
CREATE
create function unknown_gt(unknown,unknown) returns bool as
'declare i1 text; i2 text;
begin i1:= $1; i2:= $2; return (i1 > i2);
end; ' language 'plpgsql';
CREATE
create operator > ( leftarg=unknown, rightarg=unknown, procedure=unknown_gt, commutator='>',
negator='<=', restrict=eqsel, join=eqjoinsel );
CREATE
select 'AAAAAA' union select 'ZZZZZZ' order by 1 asc;
?column?
--------
AAAAAA
ZZZZZZ
(2 rows)
select 'aaaaaa' union select 'zzzzzz' order by 1 desc;
?column?
--------
zzzzzz
aaaaaa
(2 rows)
EOF
______________________________________________________________
PostgreSQL 6.5.0 on i586-pc-linux-gnu, compiled by gcc 2.7.2.3
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jose'