Re: operador incorrecto para numeric and float8 - Mailing list pgsql-odbc
From | Raul Breindembach |
---|---|
Subject | Re: operador incorrecto para numeric and float8 |
Date | |
Msg-id | 3BDFFD98.8070700@cantv.net Whole thread Raw |
In response to | operador incorrecto para numeric and float8 ("Raul Breindembach" <rbreindembach@cantv.net>) |
List | pgsql-odbc |
Hola otra vez: Gracias por la sugerencia, me funcionò muy bien, aunque tuve que hacer algunas trampas para conservar la compatibilidad de mi programa con otras bases de datos a travès de ODBC. En relación con el nebuloso uso de ODBC solo te puedo decir lo que sé por experiencia: ODBC es una interfaz entre la aplicación y el manejador de base de datos, en este caso PostgreSQL, solo que ODBC tiene que utilizar a su vez una intefaz almacenada en una biblioteca de enlace dinámico (.DLL) donde se encuentran los procedimientos y funciones que manejarán la base de datos, es por eso que la sugerencia que me hiciste funcionó, solo que cuando lo intento con access no sirve, ni con sqlserver, es algo así como que PostgreSQL ODBC manejara directamente la base de datos. APLICACIÓN <======> ODBC <======> PostgreSQL A !! V PosgreSQL ODBC Eliodoro Michel wrote: > Probaste usando la definición explicita para el tipo de variable? > > Cn.Execute "Update inventar set exactual = (inventar.exactual::float8 - > 1.5) where inventar.codigo = '01'" > > No estoy seguro si esto lo logre ejecutar VB (a menos que pase la cadena > directamente al motor de Posgresql sin interpretarlo a través de ODBC) pero > creo que deberia funcionar. > > Yo personalmente para ciertas cosas raras, y para evitar el no saber que > ocurre en el camino de ODBC-Postgresql preferi usar en alguno casos > funciones Postgresql que luego pueden ser llamadas en vistas o a tráves de > triggers. > > Si tienes información sobre el nebuloso uso de ODBC, agradeceria saber donde > puedo ubicar más datos sobre eso. > > > Saludos y suerte > > Elio > > > On Mon, 22 Oct 2001 21:45:39 -0400, Raul Breindembach wrote: > > Hola a todos. > > Estuve ausente durante un par de meses, pero ya vuelvo con todos los > hierros, y con algún problemita. > > He creado una tabla con la siguiente estructura: > > Create table inventar > ( > codigo Varchar(20) primary key, > dpto Decimal(10) Null, > descripcio Varchar(100) Null, > referencia Varchar(20) Null, > unidad Varchar(10) Null, > unidxgrupo Decimal(15,2) default 0, > dgrupo Varchar(10) Null, > tipo Decimal(10) Null, > costo1 decimal(15,2) default 0, > costo2 decimal(15,2) default 0, > precio1 decimal(15,2) default 0, > precio2 decimal(15,2) default 0, > precio3 decimal(15,2) default 0, > preciop1 decimal(15,2) default 0, > preciop2 decimal(15,2) default 0, > exactual Decimal(15,2) default 0, > examin Decimal(15,2) default 0, > exmax Decimal(15,2) default 0, > excento decimal(10) default 0, > exant Decimal(15,2) default 0, > pvp1 decimal(15,2) default 0, > pvp2 decimal(15,2) default 0, > pvp1g decimal(15,2) default 0, > pvp2g decimal(15,2) default 0, > exdeposito decimal(15,2) default 0, > extienda decimal(15,2) default 0 > ); > > Tengo un pequeño problema en mi programa, al ejecutar la siguiente > instrucción: > > Cn.Execute "Update inventar set exactual = (inventar.exactual - 1.5) where > inventar.codigo = '01'" > > -------------------------------------------------------------------- > Microsoft Visual Basic > -------------------------------------------------------------------- > Error '-2147467259 (80004005)' en tiempo de ejecución: > > Error while executing the query (non-fatal); > ERROR: Unable to identify an operator '-' for types 'numeric' and > 'float8' > > you will have to retype this query using an explicit cast > > -------------------------------------------------------------------- > > Lo cual no sucede al ejecutar la que sigue: > > Cn.Execute "Update inventar set exactual = (inventar.exactual - 1) where > inventar.codigo = '01'" > > Claramente se nota dónde está el error, lo que no sé es como evitar que > suceda, tengo la versión de PostgreSQL 7.1.1 y la versión 7.01.00.05 de > PostgreSQL ODBC > > Gracias por adelantado, acepto cualquier sugerencia. > > > > > > _______________________________________________________ > http://inbox.excite.com > > > >
pgsql-odbc by date: