Метод create класса Table
Метод create класса Table создает
таблицу в базе данных. Первым параметром метод
принимает объект подключения bind, который
может быть движком или соединением. Дополнительно
можно передать параметр checkfirst, который
проверяет существование таблицы перед созданием.
Синтаксис
Table.create(bind, [checkfirst])
Пример
Давайте создадим таблицу articles в базе
SQLite в памяти:
from sqlalchemy import create_engine, MetaData, Table, Column, Integer, String
engine = create_engine('sqlite:///:memory:')
metadata = MetaData()
articles = Table(
'articles', metadata,
Column('id', Integer, primary_key=True),
Column('title', String),
Column('text', String)
)
articles.create(engine)
print(articles.name)
Результат выполнения кода:
"articles"
Пример
Давайте создадим таблицу с проверкой существования
параметром checkfirst:
from sqlalchemy import create_engine, MetaData, Table, Column, Integer, String
engine = create_engine('sqlite:///:memory:')
metadata = MetaData()
articles = Table(
'articles', metadata,
Column('id', Integer, primary_key=True),
Column('title', String)
)
articles.create(engine, checkfirst=True)
articles.create(engine, checkfirst=True)
print('Table created successfully')
Результат выполнения кода:
"Table created successfully"
Пример
Давайте создадим таблицу через объект соединения:
from sqlalchemy import create_engine, MetaData, Table, Column, Integer, String
engine = create_engine('sqlite:///:memory:')
metadata = MetaData()
articles = Table(
'articles', metadata,
Column('id', Integer, primary_key=True),
Column('title', String)
)
with engine.connect() as conn:
articles.create(conn)
print('Table created via connection')
Результат выполнения кода:
"Table created via connection"
Смотрите также
-
класс
Table,
который представляет таблицу базы данных -
метод
drop,
который удаляет таблицу из базы данных -
метод
exists,
который проверяет существование таблицы -
метод
tometadata,
который копирует таблицу в другие метаданные