Debido a que "múltiples escrituras simultáneas" es mucho más difícil de lograr en el motor de base de datos central que un escritor único, un lector múltiple. Está más allá de los parámetros de diseño de SQLite, e incluirlo podría subvertir el tamaño y la simplicidad deliciosamente pequeños de SQLite.
La compatibilidad con altos grados de concurrencia de escritura es un sello distintivo de los grandes motores de bases de datos como DB2, Oracle, SQL Server, MySQL, PostgreSQL, NonStop SQL y Sybase. Pero es técnicamente difícil de lograr, ya que requiere un extenso control de concurrencia y estrategias de optimización como el bloqueo de bases de datos, tablas y filas o, en implementaciones más modernas, Control de concurrencia multi-versión . La investigación sobre este problema / requisito es voluminosa y se remonta a décadas .
SQLite tiene una filosofía de diseño muy diferente de la mayoría de los DBMS centrados en el servidor que admiten múltiples escritores. Está diseñado para llevar el poder de SQL y el modelo relacional a aplicaciones individuales y, de hecho, se puede integrar dentro de cada aplicación. Ese objetivo requiere compensaciones significativas. No agregar la infraestructura significativa y la sobrecarga necesaria para manejar múltiples escritores simultáneos es uno de esos.
La filosofía se puede resumir en una declaración sobre :
SQLite no compite con las bases de datos cliente / servidor. SQLite compite con fopen ().