ebben a fejezetben megtudhatja, hogyan kell használni az SQLite-t python programokban.
telepítés
SQLite3 lehet integrálni Python segítségével sqlite3 modul, amelyet írt Gerhard Haring. A PEP 249 által leírt DB-API 2.0 specifikációnak megfelelő SQL interfészt biztosít. Nem kell külön telepítenie ezt a modult, mert alapértelmezés szerint a Python 2.5 verziójával együtt szállítják.x-től.,
az sqlite3 modul használatához először létre kell hoznia egy kapcsolatobjektumot, amely képviseli az adatbázist, majd opcionálisan létrehozhat egy kurzorobjektumot, amely segít az összes SQL utasítás végrehajtásában.
Python sqlite3 modul API-k
a következők fontos sqlite3 modul rutinok, amelyek elegendőek lehetnek az SQLite adatbázis használatához a Python programból. Ha kifinomultabb alkalmazást keres, akkor megnézheti a Python sqlite3 modul hivatalos dokumentációját.
Sr.No., | API& leírás |
---|---|
1 |
sqlite3.csatlakozás (adatbázis) Ez az API megnyit egy kapcsolatot az SQLite adatbázisfájllal. Használhatja a”: memory: “adatbázis-kapcsolat megnyitásához egy olyan adatbázishoz, amely a RAM-ban található, nem pedig a lemezen. Ha az adatbázis sikeresen megnyílik, akkor egy kapcsolatobjektumot ad vissza. Ha egy adatbázishoz több kapcsolat fér hozzá, és az egyik folyamat módosítja az adatbázist, az SQLite adatbázis zárolva van, amíg a tranzakció el nem történik., Az időtúllépési paraméter meghatározza, hogy mennyi ideig kell várnia a kapcsolatnak, amíg a zár el nem tűnik, amíg kivételt nem emel. Az időtúllépési paraméter alapértelmezett értéke 5.0 (öt másodperc). Ha az adott adatbázis neve nem létezik, akkor ez a hívás létrehozza az adatbázist. Megadhatja fájlnév a kívánt elérési utat is, ha azt szeretné, hogy hozzon létre egy adatbázis bárhol máshol, kivéve az aktuális könyvtárban. |
2 |
kapcsolat.kurzor () Ez a rutin létrehoz egy kurzort, amelyet az adatbázis-programozás során a Python segítségével használnak., Ez a módszer egyetlen opcionális paramétert fogad el cursorClass. Ha a mellékelt, ez kell egy egyéni kurzor osztály, amely kiterjeszti sqlite3.Kurzor. |
3 |
kurzor.execute(sql ) Ez a rutin végrehajtja az SQL utasítás. Az SQL utasítás paraméterezhető (azaz helyőrzők az SQL literálok helyett). Az sqlite3 modul kétféle helyőrzőt támogat: kérdőjeleket és megnevezett helyőrzőket (megnevezett stílus). például − kurzor.execute (“insert in people értékek (?, ?) “, (who, kor)) |
4 |
kapcsolat.,execute(sql ) Ez a rutin a kurzorobjektum által biztosított fenti végrehajtási módszer parancsikonja, amely közbenső kurzorobjektumot hoz létre a kurzor módszer hívásával, majd felhívja a kurzor végrehajtási módját a megadott paraméterekkel. |
5 |
kurzor.executemany (sql, seq_of_parameters) Ez a rutin SQL parancsot hajt végre az SQL sorozatban található összes paraméterszekvenciával vagy leképezéssel szemben. |
6 |
kapcsolat.,executemany (sql) Ez a rutin egy parancsikon, amely létrehoz egy közbenső kurzor objektum hívja a kurzor módszer, majd felhívja a kurzort.s executemany módszer a megadott paraméterekkel. |
7 |
kurzor.executescript (sql_script) Ez a rutin egyszerre több SQL utasítást hajt végre szkript formájában. Először egy COMMIT nyilatkozatot ad ki, majd végrehajtja az SQL szkriptet, amelyet paraméterként kap. Az összes SQL utasítást félig kettősponttal (;) kell elválasztani. |
8 |
kapcsolat.,executescript (sql_script) Ez a rutin egy parancsikon, amely létrehoz egy közbenső kurzor objektum hívja a kurzor módszer, majd felhívja a kurzor executescript módszer a megadott paraméterekkel. |
9 |
kapcsolat.total_changes () Ez a rutin az adatbázis-kapcsolat megnyitása óta módosított, beillesztett vagy törölt adatbázissorok teljes számát adja vissza. |
10 |
kapcsolat.commit() Ez a módszer az aktuális tranzakciót követi el., Ha nem hívja ezt a módszert, bármi, amit tett, mivel az utolsó hívás elkövetni () nem látható más adatbázis-kapcsolatok. |
11 |
kapcsolat.rollback () Ez a módszer visszaállítja az adatbázis minden változását az utolsó kötelezettségvállalási hívás óta (). |
12 |
kapcsolat.Bezárás () Ez a módszer bezárja az adatbázis-kapcsolatot. Ne feledje, hogy ez nem hívja automatikusan elkövetni (). Ha csak bezárja az adatbázis-kapcsolat hívása nélkül elkövetni () először, a változások elvesznek! |
13 |
kurzor.,fetchone () Ez a módszer a lekérdezés eredményhalmaz következő sorát tölti le, egyetlen szekvenciát küld vissza, vagy nincs, ha nincs több adat. |
14 |
kurzor.fetchmany () Ez a rutin lekéri a lekérdezési eredmény következő sorait, visszatérve a listát. Egy üres lista vissza, ha nincs több sor áll rendelkezésre. A módszer megpróbálja letölteni annyi sort, amennyit a méret paraméter jelez. |
15 |
kurzor.fetchall () Ez a rutin lekéri a lekérdezési eredmény összes (fennmaradó) sorát, visszatérve egy listát., Egy üres lista vissza, ha nincs sor áll rendelkezésre. |
Csatlakozás az adatbázishoz
a következő Python kód megmutatja, hogyan lehet csatlakozni egy meglévő adatbázishoz. Ha az adatbázis nem létezik, akkor létrejön, végül egy adatbázisobjektum kerül visszaadásra.
#!/usr/bin/pythonimport sqlite3conn = sqlite3.connect('test.db')print "Opened database successfully";
itt az adatbázis nevét is megadhatja speciális névként :memória: adatbázis létrehozásához RAM-ban. Most futtassuk a fenti programot adatbázis-tesztünk létrehozásához.db az aktuális könyvtárban. Meg lehet változtatni az utat, mint egy a követelmény., Tartsa a fenti kódot sqlite.py Fájl, majd hajtsa végre az alábbiak szerint. Ha az adatbázis sikeresen létrejött, akkor a következő üzenetet jeleníti meg.
$chmod +x sqlite.py$./sqlite.pyOpen database successfully
hozzon létre egy táblázatot
a következő Python program használható tábla létrehozására a korábban létrehozott adatbázisban.
a fenti program végrehajtásakor létrehozza a vállalati táblázatot a tesztben.,a db a következő üzeneteket jeleníti meg −
Opened database successfullyTable created successfully
beszúrási művelet
a következő Python program megmutatja, hogyan lehet rekordokat létrehozni a fenti példában létrehozott vállalati táblázatban.
amikor a fenti program végrehajtásra kerül, létrehozza az adott rekordokat a vállalati táblázatban, és a következő két sort jeleníti meg −
Opened database successfullyRecords created successfully
válassza a művelet
a következő Python program megmutatja, hogyan lehet rekordokat letölteni és megjeleníteni a fenti példában létrehozott vállalati táblából.,
a fenti program végrehajtásakor a következő eredményt hozza.
frissítési művelet
a következő Python-kód mutatja, hogyan kell használni a frissítési nyilatkozatot a rekordok frissítéséhez, majd letölteni és megjeleníteni a frissített rekordokat a vállalati táblából.
a fenti program végrehajtásakor a következő eredményt hozza.
Opened database successfullyTotal number of rows updated : 1ID = 1NAME = PaulADDRESS = CaliforniaSALARY = 25000.0ID = 2NAME = AllenADDRESS = TexasSALARY = 15000.0ID = 3NAME = TeddyADDRESS = NorwaySALARY = 20000.0ID = 4NAME = MarkADDRESS = Rich-MondSALARY = 65000.0Operation done successfully
DELETE Operation
következő Python kód mutatja, hogyan kell használni DELETE statement törölni minden rekordot, majd letölteni, és megjeleníti a fennmaradó rekordokat a cég táblázatban.,
When the above program is executed, it will produce the following result.
Opened database successfullyTotal number of rows deleted : 1ID = 1NAME = PaulADDRESS = CaliforniaSALARY = 20000.0ID = 3NAME = TeddyADDRESS = NorwaySALARY = 20000.0ID = 4NAME = MarkADDRESS = Rich-MondSALARY = 65000.0Operation done successfully