· 8 years ago · Feb 17, 2018, 08:48 AM
1"""
2Создать таблицы Product, Purchase, Customer
3Product
4 id
5 name
6 price
7
8Purchase
9 id
10 datetime
11 id_customer
12 id_product
13 count
14
15Customer
16 id
17 fio
18 address
19
20И запиÑать туда Ñледующие данные:
21Product
221, iphone X, 80000
232, ipad pro, 40000
243, iphone 9, 30000
254, macbook pro, 120000
265, ice-cream, 10
27
28Customer
291, Иванов Иван Иванович, г.Екатеринбург ул. Бажова д. 5 кв 7
302, ÐлекÑандров ÐлекÑандр ÐлекÑандрович, г.ÐÑбеÑÑ‚ ул. ПарижÑÐºÐ°Ñ 89 кв 98
313, Петров Петр Петрович, г.СевероуральÑк ул. Ленина д. 1 кв 1.
32
33Purchase
341, 2018-01-01 22:12:01, 1, 1, 10
352, 2018-01-01 22:59:59, 2, 2, 1
363, 2018-01-02 07:00:01, 3, 2, 2
374, 2018-02-01 12:30:43, 3, 5, 1
385, 2017-12-30 16:23:04, 1, 4, 5
396, 2017-02-03 19:04:39, 2, 3, 1
40
41
42Выполнить Ñледующие запроÑÑ‹:
431) ПоÑчитать
44"""
45import sqlite3
46
47conn = sqlite3.connect('products.db')
48c = conn.cursor()
49
50# подготовка запроÑа на выполнение
51drop_table = '''
52DROP TABLE IF EXISTS {0};
53'''
54
55create_table_products = '''
56CREATE TABLE product(
57`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
58`name` TEXT,
59`price` FLOAT
60);
61'''
62list_table_name = '''
63SELECT name FROM sqlite_master WHERE type='table';
64'''
65
66columns = ("name", "price")
67values = (("iphone X", 80000),
68 ("ipad pro", 40000),
69 ("iphone 9", 30000),
70 ("macbook pro", 120000),
71 ("ice-cream", 10))
72
73sql_insert_product = 'INSERT INTO Product ' \
74 '({}) VALUES ({})'.format(", ".join(columns), ', '.join("?" * len(columns)))
75
76c.execute(drop_table.format('product'))
77c.execute(create_table_products)
78# выполнение execute
79conn.commit()
80for i in range(len(values)):
81 c.execute(sql_insert_product, values[i])
82conn.commit()
83
84c.execute('SELECT * FROM Product')
85data = c.fetchall()
86
87print(data)
88conn.close()