Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > .NET
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-02-2007
pepitu pepitu is offline
Miembro
 
Registrado: sep 2005
Posts: 25
Poder: 0
pepitu Va por buen camino
Actualizar datos de una consulta

Hola.
Os cuento mi problema de novato en C#:
-en un dataGridView cargo un TableAdapter (que se ha formado al arrastrar un DataAdapter en el diseñador del dataset y en el que cargo una consulta que implica a dos tablas (inner join)).

El tema está que quisiera poder actualizar los datos mostrados (editar, eliminar,...) pero no consigo guardar (actualizar) dichos cambios ya que no se generan los otros métodos (aparte del Select) como Update.

Este problema por descontado que no aparece cuando el orígen de datos del DataGrid es sólo una tabla, cuyos datos puedo actualizar usando el método Update del DataAdapter (pasándole el datset).

Se puede? Cómo?

Saludos
Responder Con Cita
  #2  
Antiguo 27-02-2007
Avatar de fredo
fredo fredo is offline
Miembro
 
Registrado: oct 2003
Ubicación: Chile, Valparaiso
Posts: 318
Poder: 21
fredo Va por buen camino
Smile

ningun dataset te permitira modificar datos hay otra tabla involucrada...osea de esa forma no tienes solucion, lo mas practico y SI FUNCIONA es usar solo una tabla en el componente, y los campos que requieras de la segunda tabla separarlos en campos calculados en base a la primera... con eso deberia funcionar... otra opcion si la velocidad es lenta es utilizar clientdataset cargando el contenido completo del resultado, luego ir chequeando los cambio e ir relializando los codigos sqls necesarios para actualizar los campos que si necesitas....

Espero haberte ayudado...

Slds.

Por si acaso esto pasa en delphi, no soy especialista en C# pero al caso es lo mismo debido a que al haber 2 tablas involucradas en una query no se sabe cual actualizar a raiz de los cambios, esto mismo pasara si aplicas group by distinct... etc...
__________________
^_^

http://stna.cl

Última edición por fredo fecha: 27-02-2007 a las 15:15:31.
Responder Con Cita
  #3  
Antiguo 27-02-2007
Avatar de __hector
[__hector] __hector is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Santo Domingo, Rep. Dom.
Posts: 1.075
Poder: 23
__hector Va por buen camino
No estoy tan seguro de lo anterior. Lo que si te puedo decir es que puedes utilizar un SQLCommandBuilder y asociarlo con el adapter para generar las sentencias sql de actualizacion y borrado de datos. O tambien puedes escribir directamente las sentencias de actualizacion, usando las propiedades UpdateCommand y DeleteCommand del SqlDataAdapter.

Claro esta, para esto el resultado de la consulta que traes debe ser actualizable (no puedes editar campos con funciones agregadas, o joins que repitan filas, entre otras limitantes que puedes encontrar en los Books online de sql server)
__________________
Héctor Geraldino
Software Engineer
Responder Con Cita
  #4  
Antiguo 02-03-2007
pepitu pepitu is offline
Miembro
 
Registrado: sep 2005
Posts: 25
Poder: 0
pepitu Va por buen camino
Gracias

Fredo, Hector....
Gracias por vuestras respuestas y perdonad en demorarme con este mensaje.

Voy avanzando pero con algunos problemas como:
- la lentitud al usar varios datasets tipados en un mismo form (tarda en cargarse por lo que he pasado a realizar una serie de pasos accediendo de forma conectada -datareader-)

Realmente me lleva todo mucho más tiempo del esperado...

Perdón....me voy por las ramas. Mil gracias
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
Actualizar datos de una base de datos en un reporte Marymania Impresión 4 27-11-2006 19:47:32
¿cómo Actualizar Un Campo De Una Consulta En Un Dbgrid? dibe Conexión con bases de datos 2 07-09-2006 00:54:54
actualizar la consulta beatriz g Conexión con bases de datos 3 31-08-2006 20:44:15
Actualizar Datos trex2000 Firebird e Interbase 1 26-09-2003 23:21:49
actualizar consulta ADO haron Conexión con bases de datos 1 07-05-2003 11:40:41


La franja horaria es GMT +2. Ahora son las 22:00:13.


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