Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Problemas con Oracle (https://www.clubdelphi.com/foros/showthread.php?t=57618)

Esau 23-06-2008 01:07:53

Problemas con Oracle
 
Saludos Foristas.
les cuento que estoy haciendo una aplicacion en Oracle con Delphi 2007 usando componentes DbExpress.
las consulta que tengo es muy simple pero hasta ahora no he podido dar con la solucion:

Tengo una tabla en Oracle:
Código SQL [-]
Create Table  MessageHeader(
  MessageNumber Number(18,0) not null Primary Key,
  Messagedate Timestamp,
  MessageTitle Varchar2(50)
);

luego en Delphi tengo un Datamodule con un SQLConnection (ya esta conectado sin problemas)
luego un SQLQuery y en su propiedad SQl tiene esta sentencia
Select * from MessageHeader where MessageNumber = :Numero

luego en el mismo datamodule tengo un DataSetProvider y un ClientDataSet devidamente configurados.

desde delphi tengo un formulario con un boton y en el boton tengo estas sentencias:
Código Delphi [-]
ClientDataSet.Close
ClientDataSet.Params.ParambyName('Numero').value := 1
ClientDataSet.Open
esta simple orden me arroja un mensaje de tipo ORA-01722 numero no valido.

no encuentro el problema , por que lo que estoy pasando en el parametro es un numero.

Saludos a todos.

poliburro 23-06-2008 05:42:00

Dos cosas amigo.,

Primera:
Quiera permitirme recomendarte ADO para conectar con oracle, yo lo uso con el 8, el 10 y el 11 y funciona de maravilla.

Segunda, Si declaras como integer el campoMessageNumber, deberá funcionar, o de otra manera decláralo como Numeric(9,0).

Saludos

Esau 25-06-2008 00:38:07

Primero mil disculpas por la demora en la respuesta, pero no tengo mucho tiempo por estos dias.
Bueno te cuento que descarte ADo por la compatibilidad con otros Motores de BD.
lo que estoy haciendo es hacer una aplicacion que sea independiente del Motor de base de datos,
de esta forma mi aplicacion podra funcionar en FireBird, MSSQL Server , Oracle MySQL y todos los motores que soporte DBExpress.

Aun no he hecho la modificacion que me recomendaste en el campo, pero lo intentare y te comunico los resultados.


La franja horaria es GMT +2. Ahora son las 10:13:14.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi