Overwriting Operator for numeric and float8 fails
От | Johann Zuschlag |
---|---|
Тема | Overwriting Operator for numeric and float8 fails |
Дата | |
Msg-id | E15WQLS-00037D-00@mrelay01.kundenserver.de обсуждение исходный текст |
Ответы |
standard sql operators
|
Список | pgsql-novice |
Hi, I've got a really stupid question. My application does queries like this: SELECT t6.* FROM RECHNUNG t6 WHERE t6.bruttosumm = 00000034.70 ORDER BY t6.nummer DESC I get the following error: Unable to identify an operator '=' for types 'numeric' and 'float8'... and of course the same for the operator '<>'. Ok, quotes missing. Before I just let the ODBC-driver patch the quotes. Not so smart. Now I tried the smarter way by overwriting the operator: create function numeric_eq(numeric,float8) returns bool as '' language 'internal'; create operator = ( leftarg=numeric, rightarg=float8, procedure=numeric_eq, commutator='=', negator='<>', restrict=eqsel, join=eqjoinsel ); The Problem is: It doesn't work and the backend process crashes and get's restarted. I tried it with 7.03 and I guess 7.1.2 behaves the same. What am I doing wrong? Can somebody give me hint? Thanks in advance Johann Zuschlag zuschlag@online.de
В списке pgsql-novice по дате отправления: