Базы данных и питон - PullRequest
       15

Базы данных и питон

2 голосов
/ 25 марта 2012

Я пишу приложение музыкального каталога с использованием PyQt для отображения GUI.У меня проблема с выбором движка базы данных.Есть просто слишком много вариантов.Я могу использовать:
-PyQt встроенный QSql
-sqlite3
-SQLAlchemy (Elixir)
-SQLObject
-Python DB-API
Возможно, есть гораздо больше вариантов, этоСписок - это то, что я получил от Google (я открыт для любых других предложений).Если я решу использовать какой-нибудь ORM, какую систему баз данных мне следует использовать?MySql, PostgreSQL или другое?Я знаю немного MySql, но я слышал много хорошего о PostgreSQL, с другой стороны, sqlite3 кажется наиболее популярным в настольных приложениях.Буду признателен за любые советы.

РЕДАКТИРОВАТЬ: приложение предназначено для работы на Linux и Windows.Я думаю, что размер базы данных должен быть около 100-10 тыс. Записей.

Ответы [ 2 ]

4 голосов
/ 25 марта 2012

SQLite3 имеет преимущество поставки с Python, поэтому не требует установки.Он имеет ряд приятных функций (простота использования, переносимость, ACID, хранение в одном файле, и это достаточно быстро).

SQLite - хорошая отправная точка.API-интерфейс БД Python обеспечивает согласованный интерфейс для всех популярных БД, поэтому не составит труда перейти на другую БД позже, если вы передумаете.

Решение о том, использовать ли ORM, труднее, и потом передумать сложнее.Если вы можете изолировать доступ к БД всего лишь несколькими функциями, тогда вам может вообще не понадобиться ORM.

1 голос
/ 25 марта 2012

Вам лучше использовать библиотеку ORM (Object Relational Library), которая позволит вам проектировать ООП и позволит вам позаботиться о базе данных.Есть много преимуществ;но одно из лучших - это то, что вы не будете привязаны к движку базы данных.Вы можете использовать sqlite для разработки и поддерживать совместимость вашего проекта с Postgresql, Mysql и даже Oracle D, в зависимости от одного изменения параметра конфигурации.

Учитывая, что моим ORM является SQLAlchemy, из-за егозрелость для того, чтобы быть хорошо известным и используемым (но другие могли бы также быть хорошими). ​​

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...