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

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 10-11-2006
bohemioloco bohemioloco is offline
Miembro
 
Registrado: nov 2006
Ubicación: Tarija - Bolivia
Posts: 20
Poder: 0
bohemioloco Va por buen camino
Unhappy Error al llenar tabla desde archivo txt

Saludos
En un anterior hilo pregunte si era posible llenar una tabla (socios) con datos de un archivo txt y Neftali me respondio:

Cita:
Empezado por Neftali
(1) Sí.
(2) Básicamente se trata de ir leyendo la información del Archivo de texto (previamente cargado en un TStrings, por ejemplo) y luego ir haciendo Insert/Update (vía TTable o TQuery) en la tabla.
Siguiendo su consejo (el cual agradezco mucho) y algunas cosas que investigué por mi cuenta utilicé un Tmemo donde cargo el contenido del archivo txt para ir leyendo la información y un Tquery para hacer el llenado de la tabla (porque me pareció el metodo más facil para mi que soy totalmente nuevo en delphi )

Resumiendo me salió el siguiente código


Código Delphi [-]
procedure TfrmNumeroUno.iM1Click(Sender: TObject);
var y,d,a,ci,num,nom,cat:string;i,j,x,k:integer;
v: array [1..4] of string;
begin
query1.Close;
Query1.ExecSql;
frmNumeroUno.Memo1.Lines.Clear;
frmNumeroUno.OpenDialog1.Title:='Exportacion de Socios'; //ABRE DIALOGO Y BUSCA EL ARCHIVO
frmNumeroUno.OpenDialog1.DefaultExt:='.txt';
frmNumeroUno.OpenDialog1.InitialDir:='C:\windows\escritorio\BD';
frmNumeroUno.OpenDialog1.Execute;
frmNumeroUno.Memo1.Lines.Clear;
frmNumeroUno.Memo1.Lines.LoadFromFile(frmNumeroUno.OpenDialog1.FileName); //cuenta las lineas del archivo de texto
y:='';
for i:=0 to frmNumeroUno.Memo1.Lines.Count do //desde 1 hasta elnumero de lineas del texto
begin
           x:=1;
           d:='';
           for k:=1 to 4 do //desde uno hasta numero de campos
           begin
                 v[k]:=''; //vector de valores
           end;
 
          y:=frmNumeroUno.Memo1.Lines.Strings[i]; 
 
          for j:=1 to length(y) do 
          begin
                 if y[j]<>'|' then
                 begin
                        d:=d+y[j];
                 end
                 else
                begin
                       v[x]:=d;
                       inc(x);
                       a:=d;
                       d:='';
               end;
           end; 
 
          ci:=v[1]; //dato del primer campo
          num:=v[2]; //dato del segundo campo
          nom:=v[3]; // dato del tercer campo
          cat:=v[4]; // dato del cuarto campo
          //Aqui tiene que cargar los datos en la tabla//
         frmNumeroUno.Query2.SQL.Clear;
         frmNumeroUno.Query2.SQL.Add('insert into socios (ci,Ncta,Nombres,Calf) values('+ci+','+num+','+nom+','+cat+')');
         Query2.Close;
         frmNumeroUno.Query2.Active:=true;
         Query2.ExecSql;
end 
end;
El problema es que en tiempo de ejecución me sale el siguiente error

"Project miproyecto.exe raised exception class EDBEngineError whyt message Invalid use of keyword"

o sea me da error al encontrar un espacio en blanco dentro del texto.

¿Que me falta? ¿que me sobra? ¿Que hice mal? Alguien me puede aconsejar

Les agradezco de antemano su ayuda

Última edición por dec fecha: 10-11-2006 a las 03:20:24.
Responder Con Cita
 



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
Llenar menú desde Tabla... vladimirbp Varios 2 10-11-2006 18:26:53
Error de Sintaxis al Insertar datos a una tabla desde otra alastor SQL 9 28-09-2006 18:27:09
llenar una tabla dbf con un query de mysql coletaun Varios 4 03-01-2006 22:04:14
Llenar una tabla con datos de otras dos tablas jovehe Tablas planas 2 23-08-2004 17:21:55
Necesito llenar un DBGrid desde una consulta con dbexpresss vivim82 Varios 5 05-05-2004 18:31:02


La franja horaria es GMT +2. Ahora son las 18:36:14.


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