· 9 years ago · Nov 20, 2016, 10:26 PM
1import sqlite3
2
3con = sqlite3.connect('test1.db')
4
5con.row_factory = sqlite3.Row
6
7cur = con.cursor()
8
9cur.execute('DROP TABLE IF EXISTS firma;')
10
11cur.execute("""
12CREATE TABLE IF NOT EXISTS firma (
13id INTEGER PRIMARY KEY ASC,
14nazwa varchar(250) NOT NULL,
15adres_nip varchar(250) NOT NULL,
16produkty varchar(250),
17cena DOUBLE DEFAULT ''
18)""")
19
20cur.executescript("""
21DROP TABLE IF EXISTS klient;
22CREATE TABLE IF NOT EXISTS klient (
23id_klienta INTEGER PRIMARY KEY ASC,
24imie varchar(250) NOT NULL,
25nazwisko varchar(250) NOT NULL,
26firma_id INTEGER NOT NULL,
27produkt varchar(250) NOT NULL,
28koszt DOUBLE NOT NULL,
29FOREIGN KEY (firma_id) REFERENCES firma(id)
30FOREIGN KEY (produkt) REFERENCES firma(produkty)
31FOREIGN KEY (koszt) REFERENCES firma(cena)
32)""")
33
34cur.execute('INSERT INTO firma VALUES(NULL, ?, ?, ?, ?);', ('Lidl', '781-18-97-358', 'czekolada 100g Milka', 2.99))
35cur.execute('INSERT INTO firma VALUES(NULL, ?, ?, ?, ?);', ('Lidl', '781-18-97-358', 'ciastka Hit', 3.49))
36cur.execute('INSERT INTO firma VALUES(NULL, ?, ?, ?, ?);', ('Lidl', '781-18-97-358', 'cheetos - pizza', 2.79))
37cur.execute('INSERT INTO firma VALUES(NULL, ?, ?, ?, ?);', ('Biedronka', '779-10-11-327', 'piwo Tyskie x8', 10.99))
38cur.execute('INSERT INTO firma VALUES(NULL, ?, ?, ?, ?);', ('Biedronka', '779-10-11-327', 'gruszki 1.37kg', 4.63))
39cur.execute('INSERT INTO firma VALUES(NULL, ?, ?, ?, ?);', ('Biedronka', '779-10-11-327', 'frytki 750g', 7.99))
40
41cur.execute('SELECT id FROM firma WHERE nazwa = ?', ('Lidl',))
42firma_id = cur.fetchone()[0]
43
44klienci = (
45 (None, 'Tomasz', 'Nowakowski', firma_id, 'czekolada 100g Milka', 3.49),
46 (None, 'Janusz', 'Jagiełło', firma_id, 'czekolada 100g Milka', 2.99),
47 (None, 'Marcin', 'Lipiński', firma_id, 'cheetos - pizza', 2.79),
48 (None, 'Kamil', 'Malinowski', firma_id, 'ciastka Hit', 3.49),
49 (None, 'Maciej', 'Makuszewski', firma_id, 'piwo Tyskie x8', 10.99),
50 (None, 'Piotr', 'Kowalczyk', firma_id, 'gruszki 1.37kg', 4.63),
51 (None, 'Tomasz', 'Nowakowski', firma_id, 'frytki 750g', 7.99),
52 )
53
54cur.executemany('INSERT INTO klient VALUES(?, ?, ?, ?, ?, ?)', klienci)
55
56con.commit()
57
58def czytajdane():
59 cur.execute('SELECT id_klienta, imie, nazwisko, nazwa, produkty, cena FROM klient, firma WHERE klient.produkt = firma.produkty')
60 klienci = cur.fetchall()
61
62 for klient in klienci:
63 print(klient['id_klienta'], klient['imie'], klient['nazwisko'], klient['nazwa'], klient['produkty'], klient['cena'])
64 print(" ")
65
66czytajdane()
67
68def usunklienta():
69 print("usuwam klienta o nazwisku Nowakowski")
70 print(" ")
71 print(" ")
72 cur.execute('DELETE FROM klient WHERE nazwisko = ?', ('Nowakowski',))
73 czytajdane()
74
75def dodajklienta():
76 print(" ")
77 cur.execute('INSERT INTO klient VALUES(?, ?, ?, ?, ?, ?)', (None, 'Krzysztof', 'Nowaczyk', firma_id, 'piwo Tyskie x8', 10.99))
78 czytajdane()
79
80usunklienta()
81dodajklienta()
82con.close()