Felhasználói eszközök

Eszközök a webhelyen


oktatas:programozas:python:adatbazis:sqlite

< Adatbázis

Python SQLite

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')
hello.py
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

leker.py
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

leker.py
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

kivetel.sh
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:

leker.py
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

oktatas/programozas/python/adatbazis/sqlite.txt · Utolsó módosítás: 2023/08/21 21:18 szerkesztette: admin