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 18-06-2008
carmelina carmelina is offline
Miembro
 
Registrado: mar 2008
Posts: 34
Poder: 0
carmelina Va por buen camino
EOleException???

Hola a todos!!!!

Tengo un problema y no se como resolverlo, la cosa es que tengo una conexion a una base de datos mysql. Utilizo los componentes Query y Tabla pero me da un error:

"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 no se porque puede ser. Voy a adjuntaros el código por si veis que es lo que hago mal.

Código:
procedure InsertarEnTabla(nombrevideo : String; Tabla : TADOTable; Query1 : TADOQuery);
var
 fech  : String;
begin
Tabla.Insert;
fech:=GetLocalT;
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;
end;
procedure Insertar(nombrevideo : String; Tabla : TADOTable; Query1 : TADOQuery);
begin
If Tabla.Active then
  begin
  nombrevideo:=form2.SaveDialog1.FileName;
  InsertarEnTabla(nombrevideo,Tabla,Query1);
  end
Else
  begin
  Tabla.open;
 nombrevideo:=form2.SaveDialog1.FileName;
  InsertarEnTabla(nombrevideo,Tabla,Query1);
end;
end;

procedure TForm1.ControlClick(Sender: TObject);
begin
If Control.Caption='Abrir' then
  begin
  OK:=True;
  Control.Caption:='Cerrar';
  Tabla.open;
   Insertar(nombrevideo,Tabla,Query1);
   end
Else
  begin
  Control.Caption:='Abrir';
  Tabla.Close;
end;
end;
Cuando da el fallo, me señala la linea:InsertarEnTabla(nombrevideo,Tabla,Query1);

El codigo tiene más lineas pero yo creo que el problema está en esta parte que os he puesto.


La cosa es que si cada vez que me sale el error, le doy a run y al final si me termina insertando los datos bien, pero no se porque sale el error ni como quitarlo.

Si pudieseis ayudarme os lo agradecería.

Un saludo y gracias de antemano.

Última edición por carmelina fecha: 18-06-2008 a las 18:02:22.
Responder Con Cita
  #2  
Antiguo 18-06-2008
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
Hola, cambia esta linea:

Código Delphi [-]
fech:=GetLocalT;

Por

Código Delphi [-]
fech:= DateToStr(Date);

Luego me comentas.

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #3  
Antiguo 18-06-2008
carmelina carmelina is offline
Miembro
 
Registrado: mar 2008
Posts: 34
Poder: 0
carmelina Va por buen camino
Hola,
Lo acabo de probar pero me sigue saliendo el mismo error. Podría ser algo del query y la tabla????O por Query1.Parameters.ParamByName().value????

Gracias de todos modos:-)
Responder Con Cita
  #4  
Antiguo 18-06-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Hola carmelina,
No se cual puede ser el cuasante del error, prueba poniendo puntos de interrupción y haciendo paso a paso con F7 y F8 para descubrir cual de todas las líneas de el código es la que te produce el error.

Si dices que el código es mayor todavía, y de que el error está en InsertarEnTabla habrá que ver en que parte de todo el código es lo que falla.

Por otro lado, en vez de emplear las etiquetas CODE sería mejor que usas la etiqueta DELPHI.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #5  
Antiguo 18-06-2008
carmelina carmelina is offline
Miembro
 
Registrado: mar 2008
Posts: 34
Poder: 0
carmelina Va por buen camino
Hola Delphius;

OK!!La proxima vez usaré la etiqueta Delphi.
Un pregunta: cómo se ponen los puntos de interrupcion?m podias poner un ejemplo??Gracias

Saludos
Responder Con Cita
  #6  
Antiguo 18-06-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Cita:
Empezado por carmelina Ver Mensaje
Hola Delphius;

OK!!La proxima vez usaré la etiqueta Delphi.
Un pregunta: cómo se ponen los puntos de interrupcion?m podias poner un ejemplo??Gracias

Saludos
La forma más directa y fácil es hacer clic sobre el costado o margen gris de la página del código a la altura de la línea en donde deseas poner un punto de interrupción. Con otro clic lo quitas.

Otra manera es ubicarte en la línea y presionar F5. Una tercera, con el botón secundario: Debug -> Toggle breackpoint.

Una vez que hayas puesto el punto de interrupción presiona en RUN y se detendrá en cuanto llegue al punto. De allí en adelante prosigue con F7 para ir linea por linea, y/o con F8 para ir de un "bloque" a otro.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #7  
Antiguo 18-06-2008
carmelina carmelina is offline
Miembro
 
Registrado: mar 2008
Posts: 34
Poder: 0
carmelina Va por buen camino
Muchas gracias Delphius:-)
Responder Con Cita
  #8  
Antiguo 19-06-2008
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola carmelina, yo creo que el error debe ser por la primera linea de tu procedimiento InsertarEnTabla "Tabla.Insert", para insertar debes utilizar o un Query o una Table, pero no ambos.

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #9  
Antiguo 26-06-2008
Avatar de tcp_ip_es
tcp_ip_es tcp_ip_es is offline
No confirmado
 
Registrado: ago 2003
Ubicación: Madrid
Posts: 635
Poder: 0
tcp_ip_es Va por buen camino
Intenta cambiar los parambyname.value por su correspondiente tipo.
Código:
Query1.Parameters.ParamByName('fecha').asdatetime;
Query1.Parameters.ParamByName('nombrevideo').asstring:=nombrevideo;
Query1.Parameters.ParamByName('ruta').asstring:='c:\videos';
A parte como dice Caro, no hace falta que pongas un Table.insert si luego insertas el registro mediante un tquery.

Saludos, Tony
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
EOLEexception "Error Desconocido" saul_montalvo Conexión con bases de datos 4 03-08-2007 06:44:18
Excepción EOleException, Mysql has gone away... JerS Conexión con bases de datos 9 21-06-2007 00:08:59
Por que no funciona EOLEException vicac Conexión con bases de datos 2 24-02-2007 19:39:42
EOleException La Operacion en varios pasos genero errores Lucas_diaz1810 Conexión con bases de datos 2 28-12-2006 13:11:36
EOleException heinrich Varios 0 25-09-2004 01:39:49


La franja horaria es GMT +2. Ahora son las 12:05:03.


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