Podatkovne baze 1

Delo s podatkovnimi bazami v Pythonu


Programski dostop do baze

Potrebovali bomo sledeče:


Python in podatkovne baze


Osnovni koncepti


Osnovni koncepti (2)


Primer s SQLite


Še en primer

import sqlite3 as dbapi
# Povežemo se na novo bazo - s tem jo ustvarimo
conn = dbapi.connect("testdb.sqlite")
cur = conn.cursor()                        # Odpremo kazalec
cur.execute("DROP TABLE IF EXISTS test;")  # Zbrišemo tabelo, če že obstaja
# Izvedemo ukaz - ustvarimo tabelo
cur.execute("""
      CREATE TABLE test (
        id   integer PRIMARY KEY AUTOINCREMENT,
        num  integer,
        data text
      );
    """)
# Vstavimo podatke v tabelo
cur.execute("INSERT INTO test (num, data) VALUES (100, 'KU-KU');")
cur.execute("SELECT * FROM test;")         # Preberemo zapisane podatke
rezultat  = cur.fetchone()                 # Hočemo le eno vrstico
print(rezultat)                            # Izpiše se (1, 100, "KU-KU")
conn.commit()                              # Poskrbimo, da so spremembe trajne
# Zapremo povezave z bazo
cur.close()
conn.close()

Uporaba with

</span>


Parametriziranje ukazov SQL

</span>


SQL injection

</span>


SQL injection (2)


Izvajanje več ukazov


Pridobivanje ID-ja vstavljene vrstice


Uvoz podatkov iz datoteke CSV


Organizacija kode

Pri pisanju aplikacij kodo organiziramo po shemi MVC.