--- Fred Parkinson <FredP@abag.ca.gov> wrote:
> Here is a problem that disappears when logging is
> on:
What version of PostgreSQL is this?
> 2. ERROR: Unable to identify an operator "=" for
> types "boolean" and "integer"
> You will have to retype this query using an
> explicit cast (#7)
>
Sounds like an old problem. Try running the following
code in in PostgreSQL:
CREATE FUNCTION MsAccessBool (bool, int4) RETURNS BOOL
AS '
BEGIN
IF $1 ISNULL THEN
RETURN NULL;
END IF;
IF $1 IS TRUE THEN
IF $2 <> 0 THEN
RETURN TRUE;
END IF;
ELSE
IF $2 = 0 THEN
RETURN TRUE;
END IF;
END IF;
RETURN FALSE;
END;
' LANGUAGE 'plpgsql';
CREATE OPERATOR = (
LEFTARG = BOOL,
RIGHTARG = INT4,
PROCEDURE = MsAccessBool,
COMMUTATOR = '=',
NEGATOR = '<>',
RESTRICT = EQSEL,
JOIN = EQJOINSEL
);
If this doesn't help you, please post your ODBC driver
settings. I assume these are boolean fields in
PostgreSQL: they should show as "yes/no" in Access.
If they do not, try relinking your tables after
running the above code.
__________________________________________________
Do you Yahoo!?
Yahoo! Tax Center - forms, calculators, tips, more
http://taxes.yahoo.com/