Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 15-07-2005
Avatar de raco
raco raco is offline
Miembro
 
Registrado: ene 2005
Posts: 58
Poder: 20
raco Va por buen camino
Ayuda con fecha

Hola, tengo el siguiente problema, estoy haciendo un programa en Delphi en el que manejo tablas de Paradox, cuando trato de hacerle un insert me sale el siguiente error: Type Miistmatch in expresion. Es el Delphi 7 y tengo el Windows Xp en español, el codigo del query es el siguiente:

Querys.insertar.Close;
Querys.insertar.SQL.Clear;
Querys.insertar.SQL.Add('insert into autsol values ('''+Label8.Caption+''','''+Label2.Caption+''','''+Label4.Caption+''','''+Memo1.Text+''','''+form3.a cceso.FieldValues['nombre']+''','''+Autoriza+''','''+DBLookupComboBox2.Text+''')');
Querys.insertar.ExecSQL;

El error es en la fecha, la configuracion de la fecha esta con dd/mm/aaaa, no se por que me marca el error, antes del insert uso estas lineas para cambiar el formato de la fecha:

Application.UpDateFormatSettings := false;
DateSeparator := '/';
ShortDateFormat := 'dd/mm/yyyy';

Pero aun asi me aparece el error, la tabla de Paradox tambien toma este formato x lo q no se en q me estoy equivocando. Espero que alguien pueda ayudarme, gracias.
Responder Con Cita
  #2  
Antiguo 15-07-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
saludos
1) Creo que asi se ve Mejor Busca sobre las Etiquetas
Código Delphi [-]
Querys.insertar.Close;
  Querys.insertar.SQL.Clear;
  Querys.insertar.SQL.Add('insert into autsol values ('''+Label8.Caption+''','''+Label2.Caption+''','''+Label4.Caption+''','''+
   Memo1.Text+''','''+form3.acceso.FieldValues['nombre']+''','''+Autoriza+''','''+DBLookupComboBox2.Text+''')');
  Querys.insertar.ExecSQL;
2) No veo donde pones fecha
3) Una sugerencia, es mejor que uses Parametros
Código Delphi [-]
Querys.insertar.Close;
  Querys.insertar.SQL.Clear;
  Querys.insertar.SQL.Add('insert into autsol values (:label1, :label2,.....) ');
  Queys.ParambyName('label1').AsString:='noseque';
  Queys.ParambyName('label2').AsString:='noseca';
  Querys.insertar.ExecSQL;
4) para insertar fechas debe acotejarlos con #, #01/12/2003#

Suerte
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!

Última edición por vtdeleon fecha: 15-07-2005 a las 01:23:05.
Responder Con Cita
  #3  
Antiguo 15-07-2005
Avatar de raco
raco raco is offline
Miembro
 
Registrado: ene 2005
Posts: 58
Poder: 20
raco Va por buen camino
Ayuda con fecha

Perdon, en el Label2.caption es en donde tengo la fecha. Voy a probar con los parametros, gracias, pero en que estara el error?, se supone que como estoy manejando la instruccion se deben de poner los valores en string no?. Si pongo el valor con este formato de fecha mm/dd/yyyy si me funciona y luego en la tabla aparece dd/mm/yyyy.

A que te refieres con esto: para insertar fechas debe acotejarlos con #, #01/12/2003#.

Gracias.
Responder Con Cita
  #4  
Antiguo 15-07-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Cita:
Empezado por raco
se supone que como estoy manejando la instruccion se deben de poner los valores en string no?.
Si, pero la Fecha no es String, es de tipo Date.
Cita:
Empezado por raco
A que te refieres con esto: para insertar fechas debe acotejarlos con #, #01/12/2003#.
No tengo conocimientos amplios en el manejo de instrucciones SQL, por tanto me he guiado siempre de un manual(buscado en Intener).
Cita:
Empezado por Manual SQL
Las fechas se deben escribir siempre en formato mm-dd-aa en donde mm representa el mes, dd el día y aa el año, hay que prestar atención a los separadores -no sirve la separación habitual de la barra (/), hay que utilizar el guión (-) y además la fecha debe ir encerrada entre almohadillas (#). Por ejemplo si deseamos referirnos al día 3 de Septiembre de 1995 deberemos hacerlo de la siguente forma; #09-03-95# ó #9-3-95#.
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
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


La franja horaria es GMT +2. Ahora son las 16:32:26.


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