В питоне блок with обычно используется для освобождения некоторого ресурса независимо от исхода выполнения кода в блоке with (нормальное выполнение, исключение, ранний return).
В случае с соединением с СУБД, with self.connection:
освобождает ресурс, т.е. закрывает это соединение, по завершению блока with. Если тебе нужно, чтобы соединение не закрывалось, не используй with.
Я подозреваю, что ты написал with "потому что в туториале так написано".