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

Атрибут name класса Sequence

Атрибут name класса Sequence хранит имя последовательности. Первым параметром в конструктор Sequence передается именно это имя. Атрибут возвращает строку, которая затем используется при генерации SQL-выражений CREATE SEQUENCE и NEXTVAL. Значение атрибута доступно только для чтения.

Синтаксис

sequence.name

Пример

Давайте создадим последовательность и выведем ее имя:

from sqlalchemy import Sequence seq = Sequence('article_id_seq') print(seq.name)

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

"article_id_seq"

Пример

Давайте передадим последовательность в колонку таблицы и проверим, что имя сохраняется:

from sqlalchemy import Sequence, Table, Column, Integer, MetaData metadata = MetaData() seq = Sequence('article_num_seq', metadata=metadata) table = Table( 'articles', metadata, Column('id', Integer, seq, primary_key=True), Column('num', Integer) ) print(seq.name) print(table.c.id.default.arg.name)

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

"article_num_seq" "article_num_seq"

Пример

Давайте создадим последовательность с явным именем и посмотрим итоговый SQL-запрос на ее создание:

from sqlalchemy import Sequence, create_engine from sqlalchemy.schema import CreateSequence engine = create_engine('sqlite:///:memory:') seq = Sequence('article_id_seq') print(CreateSequence(seq).compile(engine))

Итоговый SQL запрос:

CREATE SEQUENCE article_id_seq

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

  • класс Sequence,
    который представляет последовательность
  • метод next_value,
    который возвращает следующее значение
  • метод create,
    который создает последовательность в базе
  • атрибут start,
    который задает начальное значение
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить