sqlite insert
Метаданные – это информация о данных в базе данных. Метаданные в SQLite содержат в себе информацию о таблицах и столбцах, в которых мы храним данные. Количество строк под воздействием оператора SQL – это метаданные. Количество строк и столбцов, возвращаемые в результирующий набор, также относятся к метаданным. Метаданные в SQLite могут быть получены с использованием команды PRAGMA. Объекты SQLite могут иметь атрибуты, которые являются метаданными. Наконец, мы также можем достать определённые метаданные от запроса таблицы sqlite_master системы SQLite.
#!/usr/bin/python
# -*- coding: utf-8 -*-
import sqlite3 as lite
import sys
con = lite.connect('test.db')
with con:
cur = con.cursor()
cur.execute('PRAGMA table_info(Cars)')
data = cur.fetchall()
for d in data:
print d[0], d[1], d[2]
В этом примере, мы пускаем в обращение команду PRAGMA table_info(tableName), чтобы получить некоторую метаинформацию о нашей таблице Cars.
Мы создадим таблицу Cars и внесем несколько строк данных в неё.
#!/usr/bin/python
# -*- coding: utf-8 -*-
import sqlite3 as lite
import sys
# Подключаемся к базе данных
con = lite.connect('test.db')
with con:
cur = con.cursor()
# Создаем таблицу
cur.execute("CREATE TABLE Cars(Id INT, Name TEXT, Price INT)")
# Вносим данные
cur.execute("INSERT INTO Cars VALUES(1, 'Audi', 52642)")
cur.execute("INSERT INTO Cars VALUES(2, 'Mercedes', 57127)")
cur.execute("INSERT INTO Cars VALUES(3, 'Skoda', 9000)")
cur.execute("INSERT INTO Cars VALUES(4, 'Volvo', 29000)")
cur.execute("INSERT INTO Cars VALUES(5, 'Bentley', 350000)")
cur.execute("INSERT INTO Cars VALUES(6, 'Citroen', 21000)")
cur.execute("INSERT INTO Cars VALUES(7, 'Hummer', 41400)")
cur.execute("INSERT INTO Cars VALUES(8, 'Volkswagen', 21600)")
Данный скрипт создаёт таблицу Cars и вставляет 8 строк в таблицу.
cur.execute("CREATE TABLE Cars(Id INT, Name TEXT, Price INT)")
Этот SQL-запрос создает новую таблицу Cars. Таблица имеет три столбца.
cur.execute("INSERT INTO Cars VALUES(1,'Audi',52642)")
cur.execute("INSERT INTO Cars VALUES(2,'Mercedes',57127)")