@Swek09

Наработает цикл for в цикле while что делать?

Вот рабочий код:
qwe = 0

for value in cursor.execute(f"SELECT Date_msk FROM time_bd WHERE Num_bd = {qwe}"):
        print(value)

Консоль:
12345
Но мне нужно поставить этот цикл в цикл while:
qwe = 0
while True:
        
        qwe += 1

        for value in cursor.execute(f"SELECT Date_msk FROM time_bd WHERE Num_bd = {qwe}"):
                 print(value)
         else: 
                 print("Не работает")

Консоль:
Не работает
  • Вопрос задан
  • 128 просмотров
Пригласить эксперта
Ответы на вопрос 2
@negr_vitalya
Я скелет - негр виталя
Что-бы содержимое sql-запроса выводилось нужно итерировать вызов функции cursor.fetchall() или cursor.fetchone() после выборки из бд. А так cursor.execute ничего не возвращает и итерировать там нечего, поэтому в консоль выводится только "не работает".
Ответ написан
Vindicar
@Vindicar
RTFM!
Ну положим, в первом коде ты делаешь запрос с Num_bd = 0, а во втором ты начинаешь с Num_bd = 1 и так далее. У тебя в БД точно есть подходящие данные?
Кроме того, else для for работает не так как ты думаешь. Ветка else отработает, если цикл for не был прерван оператором break.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы