import sqlite3 con=sqlite3.connect('firma.db') con.row_factory=sqlite3.Row cur=con.cursor() cur.execute("DROP TABLE IF EXISTS pracownicy") cur.execute(""" CREATE TANLE IF NOT EXESTS pracownicy ( id INTERGER PRIMARY KEY ASC, imie varchar(50), nazwisko varchar(70) ) """) cur.executescript(""" DROP TABLE IF EXESTS telefony; CREATE TABLE IF NOT EXESTS telefony( nr_tel varchar(20) PRIMARY KEY, opis varchar(250), pracownicy_id INTERGER, FOREIGN KEY (pracownicy_id) REFERENCES pracownicy(id) ) """) cur.execute("INSERT INTO pracownicy VALUES(NULL,?,?);",('Jan','Kowalski')) cur.execute("INSERT INTO pracownicy VALUES(NULL,?,?);",('Adam','Nowak')) cur.execute("INSERT INTO pracownicy VALUES(NULL,?,?);",('Ola','Wiosna')) cur.execute("SELECT id FROM pracownicy WHERE imie=?",('Jan',)) pracownicy_id=cur.fetchone()[0] telefon=( ('500500500','komórka',pracownicy_id) ('500500505','stacjonarny',pracownicy_id) ) cur.executemany("INSERT INTO telefony VALUES(?,?,?);",telefon) def czytajdane(): cur.execute('SELECT * FROM pracownicy') pracownik=cur.fetchall() for prac in pracownik: print(prac['id'],prac['imie'],prac['nazwisko']) print() cur.execute( """ SELECT nr_tel, nazwisko FROM pracownicy,telefony WHERE pracownicy_id=telefony.pracownicy_id """) telefon=cur.fetchall() for tel in telefony: print(tel['nr_tel'],tel['nazwisko']) print() czytajdane() cur.execute('SELECT id FROM pracownicy WHERE nazwisko=?',('Nowak',)) pracownicy_id=cur.fetchall()[0] cur.execute('DELETE FROM pracownicy WHERE id=?',(3,)) con.commit() czytajdane() con.close()