¿Existe un contenedor de base de datos liviano en Python que pueda usar para SQLite. Me gustaría algo como el ORM de Django, pero puedo señalar un archivo de base de datos y me hará la API requerida (es decir, manejar todo el CRUD).Contenedor de base de datos ligero de Python para SQLite
Respuesta
Sí, SQLAlchemy es grande, pero también hay otras opciones. Uno de ellos es Peewee. Muy ligero y puede encajar perfectamente con lo que estás buscando.
SQLAlchemy es lo que estás buscando.
¿hay algo que no es tan terriblemente compleja? – Puzzled79
Es más antiguo y fuerte, pero parece complicado y no es el mejor de los desarrolladores amigables. sin embargo, se requieren habilidades de desarrollo difíciles en comparación con Peewee. –
SQLALchemy: es probablemente el más conocido y utilizado. – jsbueno
De acuerdo. Pero Simon7 ya rechazó esa sugerencia de Alex. – philofinfinitejest
Definitivamente peewee. Intenté con sqlalchemy pero es un desastre y no hay magia.
Otros ORM no están más desarrollados o no son tan buenos, como SQLobject, Elixir (capa encima de sqlalchemy), PonyORM. Peewee es lo mejor que he visto hasta ahora en la comunidad de Python, y está más cerca de los ORM principales para ruby o para php.
Peewee también tienen muchas gemas, al igual que este acceso directo puñado
Person.get_or_create(name='Foo', surname='Bar')
que automagicamente tomar la persona nombrada 'Foo Bar' de la base de datos si es que existe, de lo contrario, la crea.
Marco correcto, simplicidad más mejor –
Después de trabajar durante un año con SQLAlchemy, puedo decir que es el marco mejor desarrollado en este momento.No consideraría ningún otro marco cuando tenga que trabajar con SQL. – Alessio
Puede finalizar la compra RabaDB. Podría decirse que es una de las interfaces más simples que hay.
class Human(R.Raba) :
_raba_namespace = 'test_namespace'
#Everything that is not a raba object is primitive
name = rf.Primitive()
age = rf.Primitive()
city = rf.Primitive()
#Only Cars can fit into this relation
cars = rf.Relation('Car')
#best friend can only be a human
bestFriend = rf.RabaObject('Human')
Está optimizado tener poco consumo de memoria, que soporta consultas mediante ejemplos, la herencia, dispone de herramientas de depuración e incluso permite que usted se caiga de nuevo en SQL si es necesario.
No está bien documentado, tampoco muestra demostraciones claras de complejidad. –
Bueno, no estoy de acuerdo. El readme de github contiene prácticamente todo lo que necesitas saber para usarlo. Hasta la depuración, las transacciones e incluso la herencia. Si está interesado en la complejidad y el rendimiento, depende en gran medida de la versión de SQLite. Sin embargo, nada se mantiene en secreto aquí. Puede imprimir fácilmente las consultas SQL con conn.enableQueryPrint (True) (consulte readme). Si desea ver los esquemas, los archivos .db se pueden abrir con cualquier cliente SQLite, y puede usar la explicación de SQLite para obtener una mejor visión de las interpretaciones dependiendo de su versión de SQLite. – tariqdaouda
Parece que no está de acuerdo con su pequeño conocimiento, vea cómo mantener el documento. https://github.com/coleifer/peewee y también http://docs.peewee-orm.com/en/latest/, agregando algunas muestras que no podemos decir que estén bien documentadas. Es posible que conisder su documento, pero solo el 2% de la documentación completa. Simplemente, vea hoy en día que no hay una sola horquilla o RabaDb libs de alta calificación, puedo considerar que su desacuerdo es su personal. Pero RabaDB aún débil sobre la utilización. –
Acaba de terminar esta capa de orm orientada a objetos de python muy simple y genial.
- 1. Python SQLite: base de datos está bloqueado
- 2. Cifrar base de datos SQLite en C#
- 3. Seguridad de la base de datos Sqlite
- 4. SQLite: base de datos de solo lectura
- 5. Crear base de datos SQLite en android
- 6. base de datos sqlite no creada
- 7. ¿Puedo encriptar la base de datos SQLite?
- 8. base de datos está bloqueado en SQLite
- 9. Base de datos SQLite en tarjeta SD
- 10. Android ExpandableListView y base de datos SQLite
- 11. cómo reducir la base de datos sqlite?
- 12. base de datos SQLite con FMDatabase Envoltura
- 13. Android - ¿Existe una base de datos SQLite?
- 14. Base de datos SQLite en Javascript localmente
- 15. Error al intentar utilizar el contenedor SQLite Base de datos FM
- 16. Múltiples archivos para una sola base de datos SQLite
- 17. Razones para utilizar la base de datos SQLite legible
- 18. Usando SchemaSpy para visualizar una base de datos SQLite (windows)
- 19. Mongodb ligero ODM/ORM para Python
- 20. base de datos para Python Twisted
- 21. Fusionando dos archivos de base de datos SQLite (C# .NET)
- 22. SQLite: ¿la forma más rápida de leer datos de la base de datos SQLite?
- 23. Base de datos de Python
- 24. poblando datos del archivo xml a una base de datos sqlite usando python
- 25. ¿Cómo agregar datos iniciales a la base de datos SQLite?
- 26. Android: excepción de estado ilegal de base de datos SqLite (base de datos ya cerrada)
- 27. ¿Hay un contenedor .NET/C# para SQLite?
- 28. Actualización de la base de datos sqlite cuando la base de datos del servidor se actualiza
- 29. conexión de base de datos sqlite/pregunta de bloqueo
- 30. Insertar .csvs en una base de datos SQLite en Java
peewee con suerte debería llevarlo allí. si ya tiene una base de datos, existe un script "pwiz" que también generará el código del modelo: http://charlesleifer.com/blog/model-code-generation-peewee/ – coleifer
peewee simplemente fácil y rápido de usar. –
peewee es bueno. –