Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-06-2008
carmelina carmelina is offline
Miembro
 
Registrado: mar 2008
Posts: 34
Poder: 0
carmelina Va por buen camino
Hola de nuevo;

El error que me da es el siguiente:

Project Project1.exe raised exception class EOleException with message 'Argumentos incorrectos, fuera del intervalo permitido o en conflicto con otros'. Proceso stopped. Use Step or Run to Continue.

y tambien me aparece:

Project Project1.exe raised exception class EOleException with message
'Objeto Parameter mal definido. Se proporcionó información incompleta o incoherente'. Proceso stopped. Use Step or Run to Continue.

El código utilizado es este:

Código:
fecha:=GetLocalT;
Query1.SQL.Add('INSERT INTO misvideos VALUES (:fecha, :nombrevideo, :ruta)');
Query1.Parameters.ParamByName('fecha').value:=StrToDate(fecha);
Query1.Parameters.ParamByName('nombrevideo').value:=nombrevideo;
Query1.Parameters.ParamByName('ruta').value:='c:video';
Query1.ExecSQL;

donde la funcion GetLocalT tiene como código:

Código:
function GetLocalT: String;
 var
    stSystemDate : TSystemTime;
 begin
    Windows.GetLocalTime( stSystemDate );
    Result := DateToStr( SystemTimeToDateTime( stSystemDate ) );
 end;
Bueno, si podeis ayudarme sería genial, y si no gracias igualmente:-)
Responder Con Cita
  #2  
Antiguo 12-06-2008
Avatar de kuan-yiu
[kuan-yiu] kuan-yiu is offline
Miembro Premium
 
Registrado: jun 2006
Ubicación: Galicia. España.
Posts: 1.017
Poder: 19
kuan-yiu Va camino a la fama
Yo nunca utilizo ".value" porque suele fallar, en tu caso lo haría así:
Código Delphi [-]
Query1.ParamByName('fecha').asDateTime:=fecha;
Query1.ParamByName('nombrevideo').asString:=nombrevideo;
Query1.ParamByName('ruta').asString:='c:video';
Query1.ExecSQL;
Responder Con Cita
  #3  
Antiguo 12-06-2008
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
El problema, como ya mencionaron egostar y kuan-yiu, muy posiblemente se deba al tipo de datos. Cuando usas Query1.Parameters.ParamByName('fecha').value, value es un variant, esto es, una variable que no lleva un tipo de datos específico, de manera que el objeto Query1 no sabe en qué formato mandar el dato al motor de bases.

El problema con la solución que plantea kuan-yiu -me parece- es que no es válida en tu caso, porque tú estás usando Parameters y no Params. Parameters es una colección de TParameter en lugar de TParam, y el problema es que, a diferencia de este último, TParameter no cuenta con los métodos AsDate, AsString, AsInteger, etc.

Entonces, lo que debes hacer es indicar explícitamente el tipo de datos del parámetro:

Código Delphi [-]
Query1.Parameers.ParamByName('fecha').DataType := ftDate;
Query1.Parameters.ParamByName('fecha').value;

// Saludos
Responder Con Cita
  #4  
Antiguo 15-06-2008
carmelina carmelina is offline
Miembro
 
Registrado: mar 2008
Posts: 34
Poder: 0
carmelina Va por buen camino
Hola a todos!!!

Muchas gracias por todos vuestros consejos. Al final el código que me va bien es:
Código:
Query1.SQL.Add('INSERT INTO misvideos VALUES (:fecha, :nombrevideo, :ruta)');
Query1.Parameters.ParamByName('fecha').value:=StrToDate(fech);
Query1.Parameters.ParamByName('nombrevideo').value:='nombrevideo';
Query1.Parameters.ParamByName('ruta').value:='c:\videos';
Query1.ExecSQL;
Editando en el Object Inspector el campo Parameters, con mis tres parametros(fecha, nombrevideo y ruta) y editando cada TParameter con su tipo correspondiente.

De nuevo muchas gracias por todo:-)

Un saludo

Última edición por carmelina fecha: 15-06-2008 a las 10:35:44.
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
Extraer caracteres de una cadena MiLLeNPuNk Varios 7 19-05-2010 21:37:25
Eliminar Cadena De Caracteres.... ZayDun Internet 3 27-03-2007 21:20:58
Buscador de cadena de caracteres pichi Vignola Varios 3 11-08-2006 16:51:03
eliminar caracteres de una cadena ibbeth Firebird e Interbase 4 23-12-2005 23:35:28
Cadena de mas de 50 caracteres luigidean Tablas planas 3 02-10-2004 03:09:39


La franja horaria es GMT +2. Ahora son las 03:51:20.


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