Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Tablas planas (https://www.clubdelphi.com/foros/forumdisplay.php?f=20)
-   -   ParamByName en ADO (https://www.clubdelphi.com/foros/showthread.php?t=51982)

silviodp 05-01-2008 21:50:17

ParamByName en ADO
 
Hola a todos.
Mi consulta es si existe el método ParamByName en ADO?
En mi aplicación no me lo reconoce.
Estoy trabajando con Delphi 7 y BD Access.
Muchas gracias.

Caral 06-01-2008 00:26:59

Hola
Ado si reconoce parambyname, solo que despues de parameters.
Se puede asi:
Código Delphi [-]
ADOQuery1.Parameters[0].Value
o asi:
Código Delphi [-]
ADOQuery1.Parameters.Parambyname('nombre').Value
son las dos formas de hacerlo
Saludos

silviodp 07-01-2008 12:54:11

ParamByName en ADO
 
Ahora si anda, muchas gracias Caral, saludos.

pacuuy 12-01-2008 02:36:41

Tengo un problema con parambyname...
 
hola,
les copio mi código y luego les copio el error:
Código Delphi 7:
Código Delphi [-]
DataModulesADO.DataModule2.ADOQuery1.SQL.Clear;
DataModulesADO.DataModule2.ADOQuery1.SQL.Text:=('INSERT INTO CAMIONES (MATRICULA, '
  + 'ZORRA, PESO, FECHA, BUQUE, BODEGA, CINTA) VALUES (:MATRICULA, :ZORRA, :PESO, '
  + ':FECHA, :BUQUE, :BODEGA, :CINTA)');
DataModulesADO.DataModule2.ADOQuery1.Parameters.ParamByName('MATRICULA').Value:= edit5.text;
DataModulesADO.DataModule2.ADOQuery1.Parameters.ParamByName('ZORRA').Value:= edit6.text;
DataModulesADO.DataModule2.ADOQuery1.Parameters.ParamByName('PESO').Value:= strtoint(edit7.text);
DataModulesADO.DataModule2.ADOQuery1.Parameters.ParamByName('FECHA').Value:= NOW;
DataModulesADO.DataModule2.ADOQuery1.Parameters.ParamByName('BUQUE').Value:= edit2.text;
DataModulesADO.DataModule2.ADOQuery1.Parameters.ParamByName('BODEGA').Value:= Gusano2Bodega;
DataModulesADO.DataModule2.ADOQuery1.Parameters.ParamByName('CINTA').Value:= Cinta;
showmessage(DataModulesADO.DataModule2.ADOQuery1.SQL.Text);
DataModulesADO.DataModule2.ADOQuery1.ExecSQL;
Cuando ejecuto me sale el error que dice:
Project Transgranel.exe raised exception class EOleException with message 'El campo 'CAMIONES.matricula' no puede contener un valor Null porque la propiedad Required de este campo es True. Escriba un valor en este campo'.

Estoy cargando un valor en el parambyname('matricula'), lo ejecuto paso a paso(F7) y veo que se carga bien el parámetro desde el Edit.text.

La base es en Access y uso Delphi 7.

No entiendo que estoy haciendo mal.
Alguien que me ayude??

Gracias.

jachguate 12-01-2008 03:26:00

Hola.

pacuuy, he editado tu mensaje para añadir la etiqueta delphi. Por favor, aprende a utilizarla.

Hasta luego.

;)

pacuuy 12-01-2008 12:50:01

Cita:

Empezado por jachguate (Mensaje 257696)
Hola.

pacuuy, he editado tu mensaje para añadir la etiqueta delphi. Por favor, aprende a utilizarla.

Hasta luego.

;)

Gracias jachguate por la recomendación, he de tenerlo en cuenta.

Volviendo al tema, solucioné mi cuestión con el insert, resulta que tenía el Query1 ligado a un DataSource y a una Connection a la vez. Quite el enlace al Datasource1 y solo deje enlazado con el ADOConnection1. Ahora funciona bien.

Saludos,

Pacuuy


La franja horaria es GMT +2. Ahora son las 18:11:23.

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