![]() |
Campo memo en Access
Un saludo a tod@s.
Mi duda es la siguiente: Trabajo con delphi 6 profesional update 2, mediante ADO ataco a una base de datos Access. Me ocurre lo siguiente en una ventana tengo colocado un componente TMemo para que el usuario pueda introducir observaciones sobre un informe. Este dato se graba en una tabla que tiene un campo Memo (creo recordar estos campos pueden guardar hasta 65.535 caracteres), ¿por qué motivo cuando al escribir una cantidad de caracteres que superan lo 300 caracteres, me da un error de transacción no disponible? Todas las grabaciones las ejecuto mediante transacciones. Sin embargo si me creo un formulario en Access contra esa tabla, si me deja escribir gran cantidad de caracteres hasta el límite, y lo más gracioso que después desde el programa puedo ver lo escrito desde el formulario Access directamente. ¿Por qué motivo no puedo guardar más de 300 caracteres mediante el programa y sí desde Access? Esperando una pronta respuesta, reciban un cordial saludo... :) :cool: :) |
Me parece mejor utilizar el componente TDBMemo y asignarla el datasource y datafield correspondiente a la tabla de access que contiene el campo memo.
saludos kaki |
Ok. La verdad es que no había caído en utilizar este componente.
Lo pruebo y te comento. Gracias por la sugerencia, un saludo... :) :cool: :) |
He solucionado el problema, pero no se porque motivo no se hace bien con un TADOQuery y si con TADOTable.
Me explico, todas mis acciones sobre cualquier tabla las suelo hacer mediante Query (con parámetros en tiempo de ejecución), si intento grabar un campo memo con este componente me da el error que comento en el primer hilo. Sin embargo si las incorporaciones las realizo con TADOTable no tengo problema ninguno. ¿Motivo? Un saludo.... :) :cool: :) |
segun tengo entendido el TQuery es mas para ejecutar codigo sql a modo de consulta y la TTable te representa a la tabla misma.
|
Mediante un query podemos realizar actualizaciones e inserciones más rápidas, ya que para actualizar un registro con un TADOTable primero debo de realizar una búsqueda con Locate y luego actualizar el registro mediante un Edit de la tabla.
Si lo realizo mediante un script para un TADOQuery la actualización de datos se realiza más rápido. A la hora de insertar creo da igual ya que lo único que hacemos es añadir datos a una tabla, no realizamos nada más. Un saludo... :) :cool: :) |
La franja horaria es GMT +2. Ahora son las 23:25:19. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi