с sqlite работаю через задницу. Постоянно открываю одну и ту же базу, коммиты делаю, когда даже не пишу в нее ничего и прочие прекрасные вещи, за которые некоторые из вас скорее всего избили бы меня.
Но как я пришел к вопросу о том, что надо что-то менять? Как и все. У меня сломался питон, в питоне обнаружена ошибка, потому что я не могу ошибаться. Нет. Я, будучи рукожопом, наплодил всяких там сессий с бд в рамках одного скрипта. Ну и понятное дело, внезапно начал ловить "база заблокирована", "курсор закрыт" ну и вот это вот всё.
Так как с бд работал ранее не сильно много, не было необходимости дуплить, проникся быстро матчастью, но в пределах разумного, чтобы оставить говновопросы на радость вам, о, сильные.
Скажите, верно ли мое представление о работе с базой в следующем формате:
Открыть базу в начале скрипта, создать курсор.
При попытке перезаписи/записи сделать commit, после завершения работы - закрыть курсор и отключиться от базы
Вопрос. В скрипте, например, 5 функций. Каждая из них что-то делает с базой. Моя "теория" в изложении выше - позволит работать с бд во всех 5и функциях без постоянного открыл/закрыл базу?
Предлагаю работать на более высоком уровне абстракций - доверь управление курсорами кому-нибудь более опытному
курсор сразу в топку! забудь о существовании его. И вспоминай только тогда, когда других решений нет
Обсуждают сегодня