Club Delphi  
    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 Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 01-09-2010
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 16
microbiano Va por buen camino
Cool Ayuda Con Update

bueno pues aqui estoy dandoles lata la verdad no entiendo lo que antes funcionaba ahora ya no funciona esto me paso despues de formatear la pc y despues de poner la carpeta de respaldo del sistema en la ruta que antes tenia.


bueno quiero modificar una registro de una tabla y lo hacia de la siguiente manera
Código Delphi [-]
with Fmodulo.QryTemp do
     begin
      SQL.Clear;
      sql.Add('update volantes set fecha_oficio=:P_fechaoficio');
      sql.Add('Where id_volante=:P_identificador');
      Parameters.ParamByName('p_fechaoficio').DataType:=ftDate;
      Parameters.ParamByName('P_fechaoficio').value:=wfechaoficio;//variable de tipo Tdate
      Parameters.ParamByName('p_identificador').Value:=wfirmado;
      try
        ExecSQL;
        application.MessageBox('Registro Modificado Exitosamente','',mb_ok + mb_iconinformation);
        exit;
      except
       showmessage('Problemas con Query de Modificacion ['+text+']');
       exit;
      end;
     end;

sin embargo ahora que quiero hacerlo me dice que la aplicacion usa un valor de tipo no valido para la aplicacion actual alguien sabe por que? puede pasar este error.

o que estoy haciedno mal?
Responder Con Cita
  #2  
Antiguo 01-09-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
No se que es FTDate ademas solo tiene 2 parametros el update el tercero no existe, trata asi:
Código Delphi [-]
with Fmodulo.QryTemp do
     begin
      sql.Text:= ' update volantes set fecha_oficio = :P_fechaoficio '+
                 ' Where id_volante = :P_identificador ';
      Parameters[0].Value:= ftDate;
      Parameters[1].value:= wfechaoficio;//variable de tipo Tdate
   //   Parameters[2].Value:=wfirmado; // este parametro no existe
      try
        ExecSQL;
        application.MessageBox('Registro Modificado Exitosamente','',mb_ok + mb_iconinformation);
        exit;
      except
       showmessage('Problemas con Query de Modificacion ['+text+']');
       exit;
      end;
     end;
Saludos
__________________
Siempre Novato

Última edición por Caral fecha: 01-09-2010 a las 23:00:29.
Responder Con Cita
  #3  
Antiguo 01-09-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.056
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Si el campo fechaoficio es un date, entonces está sobrando la primera línea que le dice el tipo que es

Parameters.ParamByName('p_fechaoficio').DataType:=ftDate;

Por lo que sólo es necesario:

Código:
Parameters.ParamByName('P_fechaoficio').value := wfechaoficio;
Parameters.ParamByName('p_identificador').Value := wfirmado;
Responder Con Cita
  #4  
Antiguo 01-09-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
En tal caso sigue sobrando un parametro:
Código Delphi [-]
with Fmodulo.QryTemp do
     begin
      sql.Text:= ' update volantes set fecha_oficio = :P_fechaoficio '+
                 ' Where id_volante = :P_identificador ';
      Parameters[0].value:= wfechaoficio;
      Parameters[1].Value:= wfirmado; 
      try
        ExecSQL;
        application.MessageBox('Registro Modificado Exitosamente','',mb_ok + mb_iconinformation);
        exit;
      except
       showmessage('Problemas con Query de Modificacion ['+text+']');
       exit;
      end;
     end;
Saludos
__________________
Siempre Novato

Última edición por Caral fecha: 01-09-2010 a las 23:10:12.
Responder Con Cita
  #5  
Antiguo 01-09-2010
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 16
microbiano Va por buen camino
respuesta

Caral.


ya probe con
Código Delphi [-]
sql.Text:= ' update volantes set fecha_oficio = :P_fechaoficio '+
                 ' Where id_volante = :P_identificador ';
      Parameters[0].Value:= ftDate;
      Parameters[1].value:= wfechaoficio
sin embargo me dice manda el error de caracteristica opcional no implementad, en cuanto a los
parametros no sobran ya que en esta linea

Código Delphi [-]
  Parameters.ParamByName('p_fechaoficio').DataType:=ftDate;


le estoy diciendo de que tipo es el parametro.

ahora bien

casimiro el campo en la abse de datos que es sqlserver200 es de tipo DATETIME.

probare cambiando el tipo de variables a donde guardo las fechas.
Responder Con Cita
  #6  
Antiguo 01-09-2010
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 16
microbiano Va por buen camino
REspuesta a Casimiro

tenia las variables de tipo Tdate las cambie a Tdatime por que en la base de datos asi esta.


ejecutando el programa la verdad me sigue el mismo erro caracteristica opcional no implmentada.
Responder Con Cita
Respuesta



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
deadlock update conflict with concurrent update! JuanErasmo Firebird e Interbase 6 10-07-2008 20:58:10
ayuda con un update ingmichel MS SQL Server 12 29-03-2008 00:51:25
Ayuda con Update aun memo rodrigodeoz Conexión con bases de datos 9 25-09-2007 18:54:58
UPDATE con seccion llamada UPDATE sql's MyDAC karlaoax SQL 4 25-04-2007 22:10:50
ayuda con UPDATE droguerman MS SQL Server 2 29-05-2006 20:48:28


La franja horaria es GMT +2. Ahora son las 09:25:31.


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
Copyright 1996-2007 Club Delphi