![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Cita:
Yo tengo un par de ejemplos de uso pero son algo complejos... A ver que trato de simplificarlo un poco. |
|
#2
|
||||
|
||||
|
¿qué inserta?
Pues inserta en la tabla PAGOS, el código, código de cliente, fecha e importe. ¿de donde? Pues de los DBEdits asociados a la consulta original de tu Form, o de tu DBGrid. ¿Qué o cuando se realiza cada acción? Si tienes un DBNavigator asociado a esa consulta, cuando pulses el boton de: - Eliminar.... ¿Qué sentencia SQL crees que se va a ejecutar? ![]() - Insertar ... lo mismo - Guardar ... lo mismo - etc. Añadir una cosita más: Cuando tienes el CacheUpdate a true, significa que todos esas inserciones que haces o modificaciones se harán en memoria, (lo ves en el grid que tengas) pero realmente no se han hecho en las tablas. Cuando Apliques los cambios (ApplyUpdates) entonces, y solo entonces se llevan a cabo todas y cada una de las modificaciones que has hecho previamente. ¿Ahora sí? Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. Última edición por Lepe fecha: 23-10-2006 a las 19:51:37. |
|
#3
|
|||
|
|||
si entiendo la utilidad,,, pero lo que no se es como se utiliza por ejemplo yo tengo un DBGRID el cual esta enlazado a un DataSource,TQuery y en la propiedad UpdateObject del TQuery tengo un TUpdateSQL , el TUpdateSQL ya lo tengo configurado con:update integrantes_cursos set CALIFICACION_CURSO = :CALIFICACION_CURSO where ID_CURSO = :OLD_ID_CURSO and ID_ALUMNO = :OLD_ID_ALUMNO and ID_MAESTRO = :OLD_ID_MAESTRO and CALIFICACION_CURSO = :OLD_CALIFICACION_CURSO lo que no se es donde invocar updateSQL1.Apply(ukModify); si es que esta es correcta forma de invocarlo. el DBGrid no me deja escribir en un campo,,, ya revise todas las propiedades para escritura del dbgrid y el Datasource y el Tquery, he realizado pruebas tambien con un DBEdit y me pasa lo mismo se coloca el cursor para escribir pero no acepta ninguna tecla,, porfavor tengo dias con el miismo problemita a ver si alguien ayuda... YA ENCONTRE EL PEQUEÑO DETALLE FALTABA EN EL TQUERY HABILITAR EL CACHEUPDATES pero como aplico cambios y en que propiedad de que componente? Última edición por gama_blind fecha: 13-01-2007 a las 05:37:02. |
|
#4
|
||||
|
||||
|
No suelo trabajar con cacheUpdates, pero en principio, sería llamando a los métodos del Tquery, por ejemplo query1.Edit, modificas los datos y despues query1.Post, realizas todos los cambios que quieras y por último, para aplicarlos fisicamente a la tabla (ya que al estar en cacheupdate se hacen en memoria local), tienes que acceder al método query1.ApplyUpdates(0);
Revisa que el DBGrid no esté en solo-Lectura. Si alguien puede ampliar la información, bienvenida será .Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
|
#5
|
|||
|
|||
![]() ![]() Listo... gracias por el aporte.... lo que logre hacer es insertar datos en un dbgrid en tiempo de ejecucion. Yo utilize... TDATABASE TDBGRID en evento: DataSource: TDataSourceen propiedades: opciones: dgEditing: True TUPDATESQL en propiedades: modifySQL: //Codigo SQL que genere al entrar al Componente TUpdateSQL (haciendo DobleClick) TQUERY en propiedades: CacheUpdates: True UpdateObject: TUPDATESQL TDATASOURCE en propiedades: DataSet: TQueryen evento: ONDATACHANGE: TUPDATESQL.Apply(ukModify); Espero y me haya explicado bien ... y les sirva... ![]() |
|
#6
|
||||
|
||||
|
Si en el evento OnDataChange haces un ApplyUpdates, no tiene mucho sentido, quizás debieras quitar la Cache.
Es cierto que en algunos casos puntuales, puede servir, no sé si es tu situación. Normalmente se hace cuando el servidor de la BBDD está lejos, así añades 50, 100 registros y por último se mandan todos de una sola vez para insertar físicamente. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
|
#7
|
||||
|
||||
|
Otra explicación mas vieja: http://www.clubdelphi.com/foros/show...=&threadid=985
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
|
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| ¿Para que sirve Delphi? | MARVIALI | Varios | 6 | 14-10-2010 18:48:00 |
| ¿Para que sirve MouseDownSpot? | Jan_polero | API de Windows | 5 | 15-02-2007 16:41:19 |
| dbo.num ?? para que sirve? | sakuragi | SQL | 2 | 15-12-2005 10:46:22 |
| ¿para qué sirve delphi? | MARVIALI | Varios | 3 | 18-11-2004 22:49:19 |
| Para que sirve DBExpress ? | David | Conexión con bases de datos | 2 | 19-01-2004 21:30:44 |
|