Добрый день!
Я столкнулся с такой проблемой: выбор библиотеки для соединения с БД под MySQL.
Мне нужна библиотека, которая позволяет работать с БД (желательно, MySQL, но в крайнем случае можно и другую).
Требования:
1) хорошая справка, допустимо неразвёрнутая справка по самой библиотеке при полном и доскональном соответствии DB API
2) поддержка многопоточности. Библиотека должна позволять потокам обращаться к БД без взаимной блокировки. Создание в каждом потоке своего соединения/курсора допустимо
P.S. При threadsefety=1, если для каждого потока создавать своё соединение, то всё будет работать нормально, или придётся заморачиваться с блокировками?
С учётом того, что жизненно необходима многопоточность и ясная справка или полное соответствие DB API, к которому уже есть ясная справка без внезапных сюрпризов, а устанавливать тот же PostgreSQL быстрее, чем отлавливать сотню мелких глюков, которых по мануалу быть не должно, но они есть. Где-то. Не понятно где. Но нарушают логику выполнения программы. То лучше сменить СУБД, если к другой есть идеально соответствующая библиотека, чем страдать с уже имеющейся
Это хорошо, что вы столкнулись с такой проблемой: теперь у вас появился шанс набраться опыта в её решении.
Начните с малого - выложите список рассмотреных кандидатов и расскажите, чем они вам не угодили.
Может, я ошибаюсь, но SQLAlchemy - это прослойка между программой и библиотеками, которая приводит запросы из унифицированного вида в понятный конкретной библиотеке и СУБД
astatium135: возможно мы друг друга не поняли)
Вам нужна библиотека которая сможет соединяться с БД и работать с ней? Делать запросы, вносить данные, изменять их и так далее?
Да. Но, если я правильно понял, если библиотека не может в multithreading, то SQLAlchemy тут бессилен. Что автоматически возвращает к выбору библиотеки