< Adatbázis

Python SQLite

Szerző: Sallai András

Copyright © 2020, Sallai András

Licenc: CC BY-SA 4.0

Web: https://szit.hu

Bevezetés

Az SQLite egy állomány alapú adatbáziskezelő rendszer. Egy adatbázis egyetlen állományban van tárolva.

Telepítés

Szükségtelen telepíteni bármit, a Python alapból tudja.

Ellenőrzés:

$ python3
Python 3.7.3 (default, Dec 20 2019, 18:57:59)
[GCC 8.3.0] on Linux
Type "help", "copyright", "credit", or "license" for more information.
>>> import sqlite3
>>>

Kapcsolódás fájlhoz

import sqlite3 conn = sqlite3.connect('valami.db')
import sqlite3 conn = sqlite3.connect('valami.db') conn.execute('''create table dolgozok( nev text, telepules text, fizetes real)''') conn.execute("insert into dolgozok values" "('Nagy János', 'Szolnok', 2850000)") conn.commit() conn.close()

Táblalétrehozás kulccsal:

create table dolgozok( az integer primary key autoincrement, nev text, telepules text, fizetes real );

Egy rekord lekérdezése

import sqlite3 conn = sqlite3.connect('valami.db') c = conn.cursor() telepules=('Szolnok',) sql = 'select * from dolgozok where telepules=?' c.execute(sql, telepules) print(c.fetchone()) conn.close()

Összes lekérdezése

import sqlite3 conn = sqlite3.connect('valami.db') c = conn.cursor() t=('Szolnok',) sql = 'select * from dolgozok' c.execute(sql) print('\n'.join(map(str, c.fetchall()))) conn.close()

Beszúrás

conn = sqlite3.connect('filename.db') cur = conn.cursor() sql = """delete from groups""" cur.execute(sql) sql = """ insert into groups (name) values (?) """ cur.execute(sql, ['valami']) conn.commit() conn.close()

Kivételkezelés

import sqlite3 try: conn = sqlite3.connect('tesztSqlite.db') cur = conn.cursor() sql = 'create table egy (nev text)' cur.execute(sql) print(cur.fetchall()) cur.close() except sqlite3.Error as error: print('Hiba! Sikertlen létrehozás!') finally: if conn: conn.close() print('Kapcsolat lezárva')

Lekérdezés:

import sqlite3 try: conn = sqlite3.connect('tesztSqlite.db') cur = conn.cursor() sql = 'select * from egy' cur.execute(sql) print(cur.fetchall()) cur.close() except sqlite3.Error as error: print('Hiba! Sikertlen létrehozás!') finally: if conn: conn.close() print('Kapcsolat lezárva')

Forrás

https://docs.python.org/3/library/sqlite3.html (2020)

https://www.sqlitetutorial.net/sqlite-python/ (2020)