![]() |
![]() |
| 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:
SQLite es multiconcurrente, y aun se puede usar (y se usa) en websites. Si lees mas detenidadmente la informacion de SQlite, inclusive la que tu mismo citas, te darias cuenta de que SI es multi usuario. Los locks que pone SQLite3 no se comparan con los de una basededatos tipo servidor, pero aun ellas tambien detienen el acceso al escribir datos mediate "ques". Ademas, ya explique que tengo una aplicacion que permite la funcion como me interesa. Con dos aplicaciones de ella, abro la misma base de datos y puedo usarlas yo mismo, leer y escribir sin problemas. Lo mismo es posible con mas usuarios sobre la misma base de datos. Desde luego no pretendo decir ni he dicho que SQLite sea igual que Postgres o Oracle en cuanto a multiusuarios y administracion de transacciones. Si no hay respuestas, procedo a investigar los componentes de Devart, que claramente especifican que puede lograr lo que pregunte. Aqui esta esta cita de Devart (no es mi antojo): SQLite technology support
|
|
#2
|
||||
|
||||
|
Según dicen ellos mismos, usan bloqueos de lectura/escritura, así que aunque puedan haber varios clientes conectados al mismo tiempo, no pueden actuar al mismo tiempo, eso no es concurrencia.
La explicación que dan es que normalmente las lecturas/escrituras tardan poco y apenas tienen que esperar los otros clientes. Pero eso no es multiconcurrencia real, eso es tú primero, ahora yo, después el otro, ahora otra vez tú, etc. pero no todos al mismo tiempo. No es multiconcurrente. Ahora bien, que a ti te viene bien ese sistema para el trabajo que estás haciendo, entonces perfecto.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#3
|
||||
|
||||
|
A ver, sinceramente creo que aquí hay un mar de confusiones.
La documentación de SQLite (no la vuelvo a citar pues ya se ha hecho en varias ocasiones en el hilo) claramente indica que SQLite es concurrente y que no saben de ningún otro sistema encajado que maneje tanta concurrencia como SQLite. Al mismo tiempo, también establece que tiene sus limitaciones y que no puede compararse con gestores mayores (de los cuales, por cierto, Firebird no es, ni con mucho el único y no necesariamente es el mejor). Que la concurrencia que menciona la documentación de SQLite sea o no una concurrencia real, es un asunto cuestionable, claramente, pero el sujeto de dicha objeción sería, en todo caso, el desarrollador de SQLite y no un forista que pregunta acerca de ello. Quizá me equivoque, desde luego, pero en mi opinión, el forista dejó en claro desde un principio que era consciente de las limitaciones y la pregunta era si con delphi podía abrirse una misma base de datos con dos aplicaciones, que no es lo mismo que preguntar si SQLite es o no concurrente. En una rápida prueba usando Delphi 7 y ZEOS veo que sí, que dos aplicaciones delphi pueden abrir la misma base de datos al mismo tiempo. // Saludos |
|
#4
|
||||
|
||||
|
Entonces "alguien"
no ha entendido la pregunta porque eso se suponía que se puede hacer y que no hace falta ningún componente especial para hacerlo, valen todos.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#5
|
||||
|
||||
|
El punto es que, al menos según lo que reporta el forista, en Lázarus no se puede. De ahí que pregunte si en delphi sí se puede.
// Saludos |
|
#6
|
||||
|
||||
|
¿No bastaba la respuesta de Roman, o un simple "En Delphi si se puede asi y así" o "No se puede por esto y esto"? Obviamente cualquiera de las 2 respuestas debidamente comprobables.
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
|
#7
|
|||
|
|||
|
Cita:
De hecho, avances en resolver mi problema parecen indicar que se relaciona con que SQLite3Connection que se incluye en Lazarus se describe como verificado en Windows 32 bits, y mi Windows-7 es de 64 bits, aunque mi instalacion Lazarus es de 32 bits. Y aparte Windows-7 tiene unos locks mas complejos a archivos en uso y el componente de conexion es anterior. Y aun mas, SQLite ultimas versiones, tambien trae otras tecnolgogias que son posteriores al componente de Lazarus. Me falta probar en mi otra laptop de Windows 32 bits, y luego les platico el resultado. |
|
#8
|
|||
|
|||
|
Amigos,
ya encontre el problema: Estaba usando "reset" para verificar el file (base de datos SQLite3) que se abre, en el viejo entendimiento que reset "opens to read". Esto, para evitar crear bases de datos vacias, que es una peculiaridad de SQLite3 (Cuando el archivo no lo encuentra al abrir, SQLite3 crea una base de datos vacia, lista para ser poblada). Pero "reset", cuando el file ya esta abierto, no regresa zero, aun cuando reset es para "open to read"! |
|
#9
|
||||
|
||||
|
Si es para verificar la existencia del archivo puedes usar la función FileExists.
// Saludos |
|
#10
|
|||
|
|||
|
Cita:
Eso es lo que use. SQLite3 realmente SI trabaja como dicen sus especificaciones tambien en Lazarus. Ya llevo muchas pruebas que verifican la robustez y gran capacidad de ese animalito. Es ACID-compliant segun sus especificaciones, y confirmo, dentro de mis limitaciones, que si verifica serlo. Bueno, hasta luego y gracias a todos. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| manipular la misma base de datos en la misma pc | DELFIN2000 | Conexión con bases de datos | 10 | 23-07-2010 18:34:28 |
| doble Puerto serial a la misma base de datos | FGarcia | Varios | 0 | 22-11-2006 23:45:29 |
| Dos aplicaciones y sola base de datos..? | kia | Conexión con bases de datos | 19 | 01-05-2006 18:08:20 |
| ¿Existe algún problema si quiero utilizar 2 TQuery para la misma base de datos ? | nuri | SQL | 4 | 28-07-2005 09:40:54 |
| Novato - Aplicaciones con Base de Datos | Chocoslovaco | Conexión con bases de datos | 9 | 08-07-2005 11:25:12 |
|