![]() |
SQLite is Locked? Problema con SQLite.
Tengo una base de datos SQLite connectada por firedac en un archivo local. Estoy seguro al 100% que ese archivo no esta abierto por ningun otro lado pero cuando compilo el programa al editar la base de datos me salta el siguiente error: "[FireDAC][Phys][SQLite] ERROR: database is locked"
He pensado que podría ser como en algunas bases de datos, que la tienes que poner en modo insert o edit. Pero no encuentro esa opción. Muchas gracias! EDIT: He visto que hay un modo "Edit" pero me sigue dando el mismo error. |
La gracias de las base de datos, es que pueden ser accedidas por las aplicaciones en forma simultánea. SQLite no es la excepción, así que descarto que el problema este en que otro programa lo este usando.
¿Al hacer que procedimiento ocurre esto? ¿Al abrir, consultar, conectar, editar? |
Cita:
|
Seguramente porque estas conectado desde el IDE :)
Revisa el FireDAC explorer (a la derecha en el IDE) ![]() Asegurate que no tengas la conexion abierta (boton derecho sobre la conexion, close) Si necesitas acceso multiusuario tenes que indicar el parametro "LockingMode" a "Normal" Mas info aca |
SharedCache
Ultimamente estoy teniendo el mismo problema en una App desarollada con Delphi XE8 para Android. Otra cosa que lei varias veces en distintos foros es la propiedad SharedCache, que por defecto esta en True y dicen de probar ponerla en False para evitar este problema.
Yo actualmente tengo la App con SharedCache en False, el LockingMode en Normal y aun sigo teniendo el mismo problema. Pero podes probarlo de todas maneras ya que tal vez el entorno no sea el mismo. Suerte y comentanos cuando llegues a un resultado. Saludos. |
consulta
estimado : como puedo hacer para revirsar firedac explorer ? tengo exactamente el mismo problema, quiero unicamente insertar datos en mi tabla clientes que tiene : nombre,apellido,direccion,cuil,dni ,nada mas cuando voy a hacer la insercion ,en el boton aceptar del formulario que sirve para insertar escribo lo siguiente : fdm.t_Empleados.post;
fdm.q_Empleados.Refresh; Close; Ademas revise tambien pensaba lo mismo que era porque la base da datos estaba siendo usada en otro lado ,puesto que me di cuenta que nada que ver ahora por lo que lei.pero como puedo hacer para poner la base de datos que la conexion no este abierta mil disculpas si escribo y olvido algunos detalles pero es la primera vez que hago una consulta en este foro ,agradezco cualquier ayuda que puedan brindarme, |
Cita:
Bienvenido y gracias por tu colaboración. |
La franja horaria es GMT +2. Ahora son las 21:34:07. |
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