Appearance
SQLite Table - Таблица
В Python с использованием модуля sqlite3
можно выполнить следующие действия:
- Создание пустой таблицы базы данных SQLite3:
python
import sqlite3
# Подключение к базе данных (если базы данных не существует, она будет создана)
conn = sqlite3.connect('example.db')
# Создание курсора
cursor = conn.cursor()
# Создание пустой таблицы
cursor.execute('''
CREATE TABLE IF NOT EXISTS my_table (
id INTEGER PRIMARY KEY,
name TEXT,
age INTEGER
)
''')
# Сохранение изменений и закрытие соединения
conn.commit()
conn.close()
- Получение списка всех таблиц в базе данных SQLite3:
python
import sqlite3
# Подключение к базе данных
conn = sqlite3.connect('example.db')
# Создание курсора
cursor = conn.cursor()
# Выполнение запроса для получения списка всех таблиц
cursor.execute("SELECT name FROM sqlite_master WHERE type='table';")
# Получение результатов
tables = cursor.fetchall()
# Вывод списка таблиц
for table in tables:
print(table[0])
# Закрытие соединения
conn.close()
- Получение описания полей всех таблиц базы данных SQLite3:
python
import sqlite3
# Подключение к базе данных
conn = sqlite3.connect('example.db')
# Создание курсора
cursor = conn.cursor()
# Получение списка всех таблиц
cursor.execute("SELECT name FROM sqlite_master WHERE type='table';")
tables = cursor.fetchall()
# Получение описания полей для каждой таблицы
for table in tables:
table_name = table[0]
cursor.execute(f"PRAGMA table_info({table_name});")
columns = cursor.fetchall()
print(f"Таблица: {table_name}")
for column in columns:
print(f" {column[1]} ({column[2]})")
# Закрытие соединения
conn.close()
Эти примеры помогут вам создать пустую таблицу, получить список всех таблиц и описание полей всех таблиц в базе данных SQLite3.
Этот запрос PRAGMA table_info({name_table});
возвращает информацию о столбцах таблицы в базе данных SQLite. Результат запроса представляет собой список кортежей, где каждый кортеж содержит информацию о столбце. Вот что означает каждый параметр:
- 0: Порядковый номер столбца в таблице (начиная с 0).
- 'id': Имя столбца.
- 'INTEGER': Тип данных столбца.
- 0: Флаг, указывающий, может ли столбец содержать
NULL
значения (0 - может, 1 - не может). - None: Значение по умолчанию для столбца, если оно не указано.
- 1: Флаг, указывающий, является ли столбец частью первичного ключа (1 - является, 0 - не является).
Таким образом, в вашем примере:
- Столбец
id
имеет тип данныхINTEGER
, не может содержатьNULL
значения и является частью первичного ключа. - Столбец
name
имеет тип данныхTEXT
, может содержатьNULL
значения и не является частью первичного ключа. - Столбец
age
имеет тип данныхINTEGER
, может содержатьNULL
значения и не является частью первичного ключа.