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-02-2008
odrack odrack is offline
Miembro
 
Registrado: feb 2008
Posts: 167
Poder: 17
odrack Va por buen camino
Enviar datos a una tabla igualando un campo

Que tal, soy nuevo en el foro y acudo a ustedes para ver si me pueden ayudar con este dilema que me ha dado lata.
Estoy haciendo traspasos de mercancias de una tabla a otra en bases de datos diferentes, hasta el momento ya logre enviar los datos a la otra base de datos, el problema es que tengo que igualarlo en un articulo y no se como hacerlo, uso los componentes DBE table y data access datasourse con base de datos en MySQL.
Espero haberme podido explicar y que me puedan ayudar.
Responder Con Cita
  #2  
Antiguo 18-02-2008
Avatar de Ivanzinho
[Ivanzinho] Ivanzinho is offline
Miembro Premium
 
Registrado: ene 2005
Ubicación: Galicia
Posts: 595
Poder: 20
Ivanzinho Va por buen camino
Hola odrack, bienvenido al club delphi.

Sobre tu pregunta la verdad es que no he entendido qué es lo que quieres hacer, no se si soy yo que entiendo mal o tu que no te explicaste bien , ¿puedes poner un pequeño ejemplo con datos sobre lo que quieres hacer o explicar un poco mejor qué es lo que quires hacer?

Un saúdo.
__________________
Si no lees esto no vivirás tranquilo
Non lle poñades chatas â obra namentras non se remata. O que pense que vai mal que traballe n’ela; hai sitio para todos. (Castelao)
Responder Con Cita
  #3  
Antiguo 18-02-2008
odrack odrack is offline
Miembro
 
Registrado: feb 2008
Posts: 167
Poder: 17
odrack Va por buen camino
Enviar datos a una tabla igualando un campo

Primero perdon, no soy muy bueno explicandome, jiji, Este es el fragmento de codigo y lo que necesito es que cuando se envien los datos a la otra base de datos se actualicen con estos, pero no se como igualar los campos para que se actualice.

procedure TForm12.Button1Click(Sender: TObject);
begin
form12.Table3.DatabaseName:='ventas';
form12.Table3.TableName:='articulos';
form12.DataSource3.DataSet:=form12.Table3;
form12.DataSource3.DataSet.Active:=true;
form12.Table3.UpdateRecord;
form12.Table3.FieldByName('fechaTraspaso').AsString:=dbedit1.Text;
form12.Table3.FieldByName('indalmacen').AsString:=edit1.Text;
form12.Table3.FieldByName('clvarticulo').AsString:=dbedit4.Text;//igualar por articulo
form12.Table3.FieldByName('descripcion').AsString:=dbedit2.Text;
form12.table3.FieldByName('existencias').AsString:=edit2.Text;
form12.Table3.Post;
form12.Table3.Close;
form12.Table3.Open;
end;
Responder Con Cita
  #4  
Antiguo 18-02-2008
Avatar de Ivanzinho
[Ivanzinho] Ivanzinho is offline
Miembro Premium
 
Registrado: ene 2005
Ubicación: Galicia
Posts: 595
Poder: 20
Ivanzinho Va por buen camino
Realmente no se si entendi bien a lo que te refieres, pero creo que es esto :

Primero seleccionas los datos de una base de datos utilizando un TQuery o un TTable. Luego recorres el dataset y vas actualizando la otra base de datos en base al valor de la clave:

Código Delphi [-]
DataSet.first;//DataSet con registros tabla B.D. 1
while not DataSet.Eof do
  begin
    //Query actuliza apunta a la B.D. 2
    QueryActualiza.SQL.Add('Update tabla set campo1 = :campo1 ... campoN = :campoN');
    QueryActualiza.SQL.Add('where campoClave = ' + DataSetCampoClave.value);
    QueryActualiza.ParamByName('campo1').AsTipo := DataSetCampo1.value;
    ...
    ...
    QueryActualiza.ParamByName('campoN').AsTipo := DataSetCampoN.value;

    QueryActualiza.ExecuteSQL;

  end;

Un saúdo.
__________________
Si no lees esto no vivirás tranquilo
Non lle poñades chatas â obra namentras non se remata. O que pense que vai mal que traballe n’ela; hai sitio para todos. (Castelao)
Responder Con Cita
  #5  
Antiguo 18-02-2008
odrack odrack is offline
Miembro
 
Registrado: feb 2008
Posts: 167
Poder: 17
odrack Va por buen camino
Enviar datos a una tabla igualando un campo Responder a Tema

Tengo un TTable y un TDatasourse como componentes, necesito agregar algun componente mas ya que no me muestra las opciones cuando agrego el cogido. Y tratando de explicar un poco mas, lo que quiero hacer es un traspaso de mercancia, hasta el momento he podido agregar los datos con el codigo que he escrito arriba en la base de datos 2 pero me crea un nuevo regristro y lo que no puedo hacer es que actualicen los datos igualando por una clave o un mismo valor (por ej. en sql utilizaria "Update tabla set existencias='cantidad' where clave='edit1.text') pero no se como agregar este tipo de codigo. En la base 2 tengo el campo indclave que es al que tengo que igualar para que se actualicen.

Un saludo, y espero no dar muchas molestias, ya que apenas estoy introduciendome a Delphi, donde mi fuerte es PHP jiji.
Responder Con Cita
  #6  
Antiguo 18-02-2008
Avatar de Ivanzinho
[Ivanzinho] Ivanzinho is offline
Miembro Premium
 
Registrado: ene 2005
Ubicación: Galicia
Posts: 595
Poder: 20
Ivanzinho Va por buen camino
Cita:
Empezado por odrack Ver Mensaje
Tengo un TTable y un TDatasourse como componentes, necesito agregar algun componente mas ya que no me muestra las opciones cuando agrego el cogido. Y tratando de explicar un poco mas, lo que quiero hacer es un traspaso de mercancia, hasta el momento he podido agregar los datos con el codigo que he escrito arriba en la base de datos 2 pero me crea un nuevo regristro y lo que no puedo hacer es que actualicen los datos igualando por una clave o un mismo valor (por ej. en sql utilizaria "Update tabla set existencias='cantidad' where clave='edit1.text') pero no se como agregar este tipo de codigo. En la base 2 tengo el campo indclave que es al que tengo que igualar para que se actualicen.
Tienes que agregar otro componente, un TADOQuery, y en la propiedad SQL añades la consulta como te expliqué en el post anterior.
__________________
Si no lees esto no vivirás tranquilo
Non lle poñades chatas â obra namentras non se remata. O que pense que vai mal que traballe n’ela; hai sitio para todos. (Castelao)
Responder Con Cita
  #7  
Antiguo 18-02-2008
odrack odrack is offline
Miembro
 
Registrado: feb 2008
Posts: 167
Poder: 17
odrack Va por buen camino
he agregado un Tquery, es necesario que agrege un ADOQuery??, y en donde marcas: QueryActualiza.SQL.Add('Update tabla set campo1 = :campo1 ... campoN = :campoN'); para agregar mas campos quedaria con los tres puntos (...) osea (update tabla set campo1 =:campo1 ... campo 2 = : campo2); o esto es separado por comas??(,). Sorry, pero no entendi buen esta parte.

Saludos.
Responder Con Cita
  #8  
Antiguo 19-02-2008
Avatar de Ivanzinho
[Ivanzinho] Ivanzinho is offline
Miembro Premium
 
Registrado: ene 2005
Ubicación: Galicia
Posts: 595
Poder: 20
Ivanzinho Va por buen camino
Cita:
Empezado por odrack
he agregado un Tquery, es necesario que agrege un ADOQuery??, y en donde marcas: QueryActualiza.SQL.Add('Update tabla set campo1 = :campo1 ... campoN = :campoN'); para agregar mas campos quedaria con los tres puntos (...) osea (update tabla set campo1 =:campo1 ... campo 2 = : campo2); o esto es separado por comas??(,). Sorry, pero no entendi buen esta parte.
¡¡¡Ahhh no!!!, los campos van separados por comas, los tres puntos los puse para que vieses que ahí va una lista de campos, . Perdona por no explicarme mejor .

Un saúdo.
__________________
Si no lees esto no vivirás tranquilo
Non lle poñades chatas â obra namentras non se remata. O que pense que vai mal que traballe n’ela; hai sitio para todos. (Castelao)
Responder Con Cita
  #9  
Antiguo 19-02-2008
odrack odrack is offline
Miembro
 
Registrado: feb 2008
Posts: 167
Poder: 17
odrack Va por buen camino
Ok, gracias. Me has ayudado mucho, por fin me ha salido!!, Con esto doy por terminado este tema, Gracias por la ayuda nuevamente.

Saludos!!
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
Enviar valores a tabla de una Base de Datos Caray PHP 0 28-03-2007 06:26:50
Actualizar un campo de una tabla con datos que se encuentran en otra tabla Morphine SQL 4 15-12-2006 22:47:42
Ingreso de datos en campo de tabla? marceloalegre SQL 1 30-07-2005 05:52:53
Como saber el tipo de datos de un campo de una tabla Javi2 SQL 1 27-06-2005 14:18:28
Como enviar datos almacenados en un archivo de texto a una tabla? Ariatna SQL 1 12-02-2005 02:33:54


La franja horaria es GMT +2. Ahora son las 23:28:34.


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