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 25-08-2004
fmonte fmonte is offline
Miembro
 
Registrado: ago 2004
Ubicación: Tandil
Posts: 67
Poder: 20
fmonte Va por buen camino
Thumbs up Como modificar valores desde un dbgrid q esta asociado a un QUERY?

Hola gente, soy nuevo y quisiera si alguien me pude dar una mano.
Mi problema es que tengo un dbgrid que esta asociado a un Query q es una consulta de SQL y quisiera saber como si se puede modificar algunos valores de ellos y que obviamente se actualizen las tablas en donde levanto el QUERY. Porque una manera, pero no me gusta es recorrer todo el dbgrid y hacer consultas SQL con UPDATE, pero se debe hacer muy pesado y tampoco no me gusta de esa manera, por eso quisiera saber si existe alguna manera.
Desde ya, muchisimas gracias.
Mucha Suerte, EL GATO
Responder Con Cita
  #2  
Antiguo 25-08-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
¿en oracle?

No pongas la sentencia SQL con joins directamente en tu componente. mejor usá una vista, y conectas el query a la vista con un select * from vista. Luego, create unos triggers "instead of" para la vista y listo.

Hasta luego.



pd. Si no es oracle, creo que es una buena idea que te des una vuelta por la guia de estilo de los foros y de una vez por el hilo de la calidad de las preguntas.

Bienvenido a los foros del clubdelphi.
__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #3  
Antiguo 25-08-2004
fmonte fmonte is offline
Miembro
 
Registrado: ago 2004
Ubicación: Tandil
Posts: 67
Poder: 20
fmonte Va por buen camino
Muchas Gracias, pero no lo estoy haciendo en oracle

Lo estoy haciendo en Access y no se como hacer una vista en Access, se hacerlo en Interbase por ejemplo pero no en access. Si sabes como te agradeceria q me des una ayudita.
Y lo de los triggers tambien puede ser, pero no tambien si access lo soporta.
Bueno muchas gracias por tu ayuda.
Pancho
Responder Con Cita
  #4  
Antiguo 25-08-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
¿Leiste el hilo que te recomendé?

Creo que no, y si lo hiciste, pues hará falta quizas que lo leas de nuevo.

Esto, porque aunque ya logré que digas contra que "base de datos" estas trabajando, aún no decis como te conectas, que versión de delphi usas, y algunos otros detalles que pueden ayudar, a quien quiera ayudarte, a conseguirlo.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #5  
Antiguo 25-08-2004
fmonte fmonte is offline
Miembro
 
Registrado: ago 2004
Ubicación: Tandil
Posts: 67
Poder: 20
fmonte Va por buen camino
aca te doy algunos datos, pense q no de importancia

Mira, yo estoy usando un motor de ADO, la base de datos q uso es ACCESS y no se como hacer una vista con ACCESS. La version de Delphi es 6.0.
Si me ayudas hacer una vista te lo agradeceria porq realmente en access no lo encuentro.
Muchas Gracias
Responder Con Cita
  #6  
Antiguo 26-08-2004
fmonte fmonte is offline
Miembro
 
Registrado: ago 2004
Ubicación: Tandil
Posts: 67
Poder: 20
fmonte Va por buen camino
Mi consulta de SQL, es un Select de todos los campos de una tabla y los imprimo en un DbGRID y bueno mi problema que tengo es que quiero modificar esos valores que imprimo desde el mismo Dbgrid y no se como actualizar la tabla involucrada en el Select del AdoQuery. Lo que se hacer es recorrer todo el Dbgrid y haciendo update, pero es muy costoso.
Me dijieron que una vista podria ser, entonces yo imprimiria en el dbgrid la vista y haria un trigger, pero vistas no se como se hacen en ACCESS.
Muchas Gracias, Francisco
Responder Con Cita
  #7  
Antiguo 26-08-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 24
__cadetill Va por buen camino
Pregunta:

Si la consulta es del estilo

Código SQL [-]
select *
from tabla

Por qué usas un TADOQuery y no un TADOTable?
Responder Con Cita
  #8  
Antiguo 26-08-2004
fmonte fmonte is offline
Miembro
 
Registrado: ago 2004
Ubicación: Tandil
Posts: 67
Poder: 20
fmonte Va por buen camino
Que tal?

No puedo usar una TAdotable porque uso un Where comparando con fecha en especial, entendes

Select * from tabla where fecha=X

por este motivo no puedo usar una tabla y tengo q usar un adoquery.

Muchas gracias, Francisco
Responder Con Cita
  #9  
Antiguo 26-08-2004
__cadetill __cadetill is offline
Miembro
 
Registrado: may 2003
Posts: 3.387
Poder: 24
__cadetill Va por buen camino
Cita:
Empezado por fmonte
No puedo usar una TAdotable porque uso un Where comparando con fecha en especial, entendes
Entiendo, pero...... hay algo que no te permita utilizar un filtro? (propiedad Filter y Filtered del TADOTable)
Responder Con Cita
  #10  
Antiguo 26-08-2004
fmonte fmonte is offline
Miembro
 
Registrado: ago 2004
Ubicación: Tandil
Posts: 67
Poder: 20
fmonte Va por buen camino
Ah, no habia probado usar un filtro, en realidad nunca use un filtro. De que se trata un filtro y como seria el codigo mas o menos q tendria que hacer para imprimir en el dbgrid la tabla comparando una fecha.
Muchas gracias por tu ayuda
Francisco
Responder Con Cita
  #11  
Antiguo 26-08-2004
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
Question No entiendo

Hay algo que realmente no entiendo:

Acabo de hacer una prueba usando un AdoQuery con una consulta del tipo

Código SQL [-]
select * from tabla
where condiciones

Enlacé el AdoQuery a un DBGrid, me puse a editar valores tal cual en el DBGrid y las modificaciones se guardaron en la base.

¿Cual es el problema?
Responder Con Cita
  #12  
Antiguo 26-08-2004
fmonte fmonte is offline
Miembro
 
Registrado: ago 2004
Ubicación: Tandil
Posts: 67
Poder: 20
fmonte Va por buen camino
Hola q tal?

En serio que se te modificaron en la base de datos, no hiciste nada, solo saliste de la aplicacion y te los cambio, porque a mi no me hizo nada. Sera alguna opcion del dbgrid o del adoquery??

La verdad, me descoloco lo q me decis, tendre q probar de nuevo.

Cualquier cosa, avisame.

Muchas Gracias
Responder Con Cita
  #13  
Antiguo 26-08-2004
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
Pues no hice nada especial, no modifique ninguna propiedad. Lo único que se me ocurre es que estés usando un driver distinto al que yo usé:

Microsoft Jet 4.0 OLE DB Provider

// 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


La franja horaria es GMT +2. Ahora son las 05:34:21.


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