Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-09-2010
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 18
microbiano Va por buen camino
Talking Listo Resuelto El Problema

JEJEJE CAPTURE LA EXCEPCION JEJEJE DEJO EL CODIGO
Código Delphi [-]
with Fmodulo.qry_registra do
   begin
     SQL.Clear;
     SQL.Add('select * from volantes');
     SQL.Add('where volante=:volante_a_buscar');
     Parameters.ParamByName('volante_a_buscar').Value:=Trim(wbuscar);
     try
      open;
      if not Fmodulo.qry_registra.IsEmpty then
       begin
        Fregistro.wmodificar:=FieldByname('id_volante').AsString;
        Fregistro.txtoficio.Text:=FieldByname('volante').AsString;
        Fregistro.txtremitente.Text:=FieldByname('remitente').AsString;
        Fregistro.txtfirmado.Text:=FieldByname('firmado_por').AsString;
        fregistro.txtasunto.Text:=FieldByname('asunto').AsString;
        Fregistro.txtrecibio.Text:=FieldByname('recibe').AsString;
        fregistro.txtarchivo.Text:=FieldByname('archivo_en').AsString;
        ShortDateFormat := 'dd/mm/yyyy';
        fregistro.dtp_fecha_oficio.Date:=StrToDate(FieldByname('fecha_oficio').asString);
        fregistro.dtp_fecha_recibido.Date:=StrToDate(FieldByname('fecha_recibido').asString);
        {registros de distribucion y verifico que no me traiga una
        fecha vacio si es asi le pongo la fecha actual}
        try
         Fregistro.dtp_fecha_turno.DateTime:=StrToDate(FieldByname('fecha_turnado').AsString);
        except
         on EConvertError do
     
          Fregistro.dtp_fecha_turno.DateTime:=Now;
         end;
        Fregistro.cb_personal.Text:= FieldByname('TURNADO_A').AsString;
        Fregistro.txtinstrucciones.Text:=FieldByname('para').AsString;
        {termina registros de distribucion}
        Fregistro.widentificador:=1;
        exit;
       end
      else
       begin
         Fregistro.widentificador:=0;
       end;
     except
      on E:EOleException do
        begin
        MessageDlg(Format('Error: %s    Codigo: %d', [E.Message, E.ErrorCode]), mtError, [mbOK], 0);
        exit;
       end;
     end;
   end;

AHORA BIEN ME SIGUE LA DUDA DEL POR QUE NO PUEDO USAR PARAMETROS PARA GENERAR MIS CONSULTAS:


LO QUE PARA UNOS ES FACIL HACER UN SERT DE LA SIGUIENTE MANERA :
Código Delphi [-]
      SQL.Clear;
      sql.Add('Insert into sap_serv(nombreserv,cuota)');
      SQL.Add('Values( :servicio, :cuota)');
      Parameters.ParamByName('servicio').Value:=wservicio;
      Parameters.ParamByName('cuota').Value:=wcuota;

YO LO TENGO QUE HACER ASI
Código Delphi [-]
 sql.Clear;
     sql.Add(' insert into sap_contrato (');
     Sql.Add(' nocontrato ,');    //1
     sql.Add(' nombre ,');//2
     sql.Add(' paterno ,');//3
     sql.Add(' materno ,');//4
     sql.Add(' ncompleto, '); //5
     sql.Add(' localidad ,');//6
     sql.Add(' calle ,');//7
     sql.Add(' noext ,');//8
     sql.Add(' noint ,');//9
     sql.Add(' cp ,');//10
     sql.Add(' fecharegistro ,');//111
     sql.Add(' telefono ,');//12
     sql.Add(' observacio, ');//13
     sql.add(' status ');//14
     sql.Add(' ) values (');
     sql.Add(' '+QuotedStr(wnocontrato)+', ');//1
     sql.Add(' '+QuotedStr(wnombre)+', ');//2
     sql.Add(' '+QuotedStr(wpaterno)+', ');//3
     sql.Add(' '+QuotedStr(wmaterno)+', ');//4
     sql.Add(' '+QuotedStr(wcompleto)+', '); //5
     sql.add(' '+QuotedStr(wlocalidad)+', ');//6
     sql.Add(' '+QuotedStr(wcalle)+', ');//7
     sql.Add(' '+IntToStr(wnoint)+', ');//8
     sql.Add(' '+inttostr(wnoext)+', ');//9
     sql.Add(' '+Inttostr(wcp)+', '); //10
     sql.Add(' '+QuotedStr(DateToStr(wfechare))+', ');//11
     sql.Add(' '+QuotedStr(wtel)+', ');//12
     sql.Add(' '+QuotedStr(wobs)+', ');//13
     sql.Add(' '+Inttostr(westatus) +')');//14
      ExecSQL;

AHORA LO QUE PREGUNTO ES HAY AKLGUNA EXTRAÑA RAZON DEL PORQUE ALGUNOS PUEDEN USAR PARAMETROS Y OTROS NO, O DEPENDE DE LA BASE DE DATOS O DE LOS COMPOMENTES QUE SE USAN PARA ACCEDER A ELLOS O DE LAS USES.

MIS USES

Código Delphi [-]
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, Buttons, ComCtrls,ADODB,ComObj,DateUtils;

MIS COMPONENTE SON

ADOCONEXION,ADOQUERY,ADOSTOREPROCEDURE.


Y MI BASE DE DATOS ES

SQLSERVER 2000

CONTRAVENENO, QUE USES TIENES REGISTRADAS, QUE BASE DE DATOS USAS Y QUE COMPONENTES?

ESPERO ME RESPONDAN :-)

Última edición por microbiano fecha: 07-09-2010 a las 17:24:42. Razón: modificar el mensaje
Responder Con Cita
  #2  
Antiguo 07-09-2010
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 18
microbiano Va por buen camino
Gracias por las Respuestas

Última edición por microbiano fecha: 07-09-2010 a las 23:50:06. Razón: dar gracias
Responder Con Cita
  #3  
Antiguo 07-09-2010
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.679
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
O me equivoco o el hilo nuevo que has abierto es una copia de este, si es el mismo entonces no debes abrir otro, sigue aquí hasta que soluciones el problema. Borro el otro. Saludos.
Responder Con Cita
  #4  
Antiguo 08-09-2010
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 18
microbiano Va por buen camino
vaya veo que nadie me da una respuesta, seguire investigando y si encuentro la solucion la compartire
Responder Con Cita
  #5  
Antiguo 08-09-2010
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.679
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
El problema, amigo, es que no se entiende bien cuál es el problema, qué es lo que has hecho y qué ha ocurrido después. O sea, no te has explicado bien... o no te hemos entendido nosotros.
Responder Con Cita
  #6  
Antiguo 08-09-2010
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 18
microbiano Va por buen camino
mi Estimado amigo Casimirotengo la duda del porque para unos es tan facil ahcer un insert con parametros ejemplo

Código Delphi [-]
 SQL.Clear;
      sql.Add('Insert into sap_serv(nombreserv,cuota)');
      SQL.Add('Values( :servicio, :cuota)');
      Parameters.ParamByName('servicio').Value:=wservicio;
      Parameters.ParamByName('cuota').Value:=wcuota;
y si yo trato de hacerlo me dice que la aplicacion utiliza un valor de tipo no valido para la operacion actual entonces lo que hago es
Código Delphi [-]
sql.Clear;
     sql.Add(' insert into sap_serv (');
     Sql.Add(' nombreserv ,');   
     sql.Add(' cuota ,');  
     sql.Add(' ) values (');
     sql.Add(' '+QuotedStr(wservicio)+', ');
     sql.Add(' '+Inttostr(wcuota) +')');
      ExecSQL;

bien la pregunta es :

¿ por que para unos les funciona la primera opcion de los parametros y a mi no?

se debe a:

* la base de datos (utilizo sqlserver2000)
* las uses que tenemos registradas(

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,)
Dialogs, StdCtrls, ExtCtrls, Buttons, ComCtrls,ADODB,ComObj,DateUtils; * los compomente utilizados(ADOCONEXION,ADOQUERY y ADOSTOREDPROC.


y le pregunte a contraveneno que si me podia decir que componentes usa, que base de datos y que uses tiene registradas.


Última edición por microbiano fecha: 08-09-2010 a las 16:45:50. Razón: para aclarar ejemplo
Responder Con Cita
  #7  
Antiguo 08-09-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.445
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por microbiano Ver Mensaje
Gracias por las Respuestas
Yo pensé que ya lo habías resuelto después de esta respuesta.
Deberías intentar NO ESCRIBIR EN MAYÚSCULAS, eso se hace bastante incómodo y no ayuda a que te ayuden.

Cita:
Empezado por microbiano Ver Mensaje
¿ por que para unos les funciona la primera opcion de los parametros y a mi no?
Está bien que nos digas que no te funciona, pero eso da poca información o ninguna. Deberías intentar explicar algo más que "...no me funciona".
¿Te da error? ¿Al compilar? ¿Al ejecutar?
¿Cual?
¿No te da error, pero no inserta?
¿Alguna excepción?
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #8  
Antiguo 08-09-2010
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.679
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Es que estás haciendo cosas distintas:

En el primero:
Parameters.ParamByName('servicio').Value:=wservicio;
Parameters.ParamByName('cuota').Value:=wcuota;


El campo "servicio" de qué tipo, y la variable "wservicio" de qué tipo es?



En el segundo:
sql.Add(' '+QuotedStr(wservicio)+', ');
sql.Add(' '+Inttostr(wcuota) +')');


Aquí estás pasando el valor de la variable wservicio entre comillas, sin embargo, en el modelo anterior... no!!!


Es lo único que puedo sacar con tan pocos datos
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
error al insertar campo de tipo fecha con paramtero microbiano Conexión con bases de datos 14 30-08-2010 18:01:31
Error en campo fecha, con SQL Server 2005 Carmelo Cash Conexión con bases de datos 3 21-08-2008 21:33:59
error al buscar campo tipo fecha fernando1973 SQL 2 18-05-2007 14:22:37
Error al hacer insert (campo fecha) en firebird con fibplus Acanol Firebird e Interbase 7 15-06-2006 09:05:07
Error en update campo tipo fecha dridly SQL 1 24-09-2004 14:27:37


La franja horaria es GMT +2. Ahora son las 15:54:10.


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