РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
55 of 711 menu

Атрибут returns_rows

Атрибут returns_rows класса Result возвращает логическое значение, которое показывает, содержит ли результат выполнения запроса строки. Значение True означает, что запрос вернул строки и их можно получить методами fetchone, fetchmany, fetchall, all, first и другими. Значение False говорит о том, что запрос не возвращает строк (например, INSERT, UPDATE, DELETE или DDL-операция). Атрибут не принимает параметров и доступен только для чтения.

Синтаксис

res.returns_rows

Пример

Давайте выполним запрос SELECT и проверим значение атрибута returns_rows:

from sqlalchemy import create_engine, text engine = create_engine('sqlite:///:memory:') with engine.connect() as conn: res = conn.execute(text('SELECT 1 AS num')) print(res.returns_rows)

Результат выполнения кода:

True

Пример

Давайте выполним запрос CREATE TABLE и проверим значение атрибута returns_rows:

from sqlalchemy import create_engine, text engine = create_engine('sqlite:///:memory:') with engine.connect() as conn: res = conn.execute(text( 'CREATE TABLE articles (id INTEGER, title TEXT)' )) print(res.returns_rows)

Результат выполнения кода:

False

Пример

Давайте вставим строку в таблицу и проверим, возвращает ли запрос INSERT строки:

from sqlalchemy import create_engine, text engine = create_engine('sqlite:///:memory:') with engine.connect() as conn: conn.execute(text( 'CREATE TABLE articles (id INTEGER, title TEXT)' )) res = conn.execute(text( "INSERT INTO articles (id, title) VALUES (1, 'article')" )) print(res.returns_rows)

Результат выполнения кода:

False

Пример

Давайте проверим атрибут returns_rows для запроса с параметрами:

from sqlalchemy import create_engine, text engine = create_engine('sqlite:///:memory:') with engine.connect() as conn: conn.execute(text( 'CREATE TABLE articles (id INTEGER, title TEXT)' )) conn.execute(text( "INSERT INTO articles (id, title) VALUES (1, 'article')" )) res = conn.execute( text('SELECT id, title FROM articles WHERE id = :id'), {'id': 1} ) print(res.returns_rows)

Результат выполнения кода:

True

Смотрите также

  • класс Result,
    который представляет результат выполнения запроса
  • метод fetchall,
    который возвращает все строки результата
  • атрибут rowcount,
    который показывает количество затронутых строк
  • атрибут closed,
    который показывает, закрыт ли результат
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить