Sqlite andmebaasi tegemine ja kasutamine Pythonist

Allikas: Lambda
Redaktsioon seisuga 29. jaanuar 2020, kell 13:31 kasutajalt Tammet (arutelu | kaastöö) (Uus lehekülg: 'See koodijupp ehitab pythonis https://www.sqlite.org/index.html sqlite] andmebaasi, lisab kaks kirjet ja lõpuks küsib baasist ja trükib sisu välja. Sqlite teek on pythonis ko...')
(erin) ←Vanem redaktsioon | Viimane redaktsiooni (erin) | Uuem redaktsioon→ (erin)
Mine navigeerimisribale Mine otsikasti

See koodijupp ehitab pythonis https://www.sqlite.org/index.html sqlite] andmebaasi, lisab kaks kirjet ja lõpuks küsib baasist ja trükib sisu välja. Sqlite teek on pythonis kohe kaasas, midagi ekstra installeerida ei ole vaja. Põhjalikumaks arusaamiseks SQL-st on sobiv w3schools SQL tutorial.

Andmebaas tehakse kettale ühe failina. Kui uuesti sama koodi käivitad, siis eelmise käivitamise ajal salvestatud kirjed on endiselt alles: uuesti käivitades koguneb neid juurde.

import sqlite3

# vota yhendust: kui baasi pole, see tehakse
conn = sqlite3.connect("mydbase1") 

# tee andmebaasi schema yhe tabeliga
sql_create = """create table people (id integer primary key autoincrement, name text, phone text, timestamp datetime default current_timestamp)"""
conn.execute(sql_create)

# lisa kaks kirjet
sql_insert = """insert into people (name, phone) values ('jaan', '55212345')"""
conn.execute(sql_insert)
conn.commit()
sql_insert = """insert into people (name, phone) values ('ants', '55298765')"""
conn.execute(sql_insert)
conn.commit()

# tee paring, loe koik tulemused ja tryki valja
sql_query = """select id,name,phone,timestamp from people where name='ants'"""
cur = conn.cursor()
cur.execute(sql_query)
rows = cur.fetchall()
print(rows)

# katkesta yhendus
conn.close()