Obsah
Krajta má podporu pro většinu databázových strojů SQL, což nám dává možnost vybrat si ten, který nejlépe vyhovuje tomu, čeho chceme pomocí našeho programu a našich znalostí dosáhnout.Stáhněte a nainstalujte SQLite pro Python
Jak jsme zmínili na začátku Krajta Má podporu pro většinu databází, jednoduše musíme stáhnout a nainstalovat odpovídající modul, v Linuxu dokonce můžeme stáhnout mnoho modulů prostřednictvím správce balíčků.
Pro instalaci SQLite Nejprve musíme stáhnout potřebné soubory počínaje http://pysqlite.org, což je stránka, kde modul získáme Krajta, Pokud pracujeme s Windows, nejbezpečnější je, že se stažením modulu získáme také databázový stroj jako takový, zahrnutý v instalaci. Po instalaci můžeme modul začít používat.
Také ve verzích Krajta jako v 2.7 máme mezi standardními knihovnami modul sqlite3 se kterým je to jednodušší, protože nemusíme nic stahovat a instalovat, můžeme jednoduše spustit testy importem zmíněného modulu.
Počáteční kroky
Jakmile je proces konfigurace modulu dokončen, můžeme začít pracovat na naší aplikaci, první věc, kterou musíme vědět, je, jak vytvořit databázi pro náš program, k tomu použijeme metodu připojit a tímto způsobem získat objekt, který nám pomůže komunikovat SQLite. K tomu uděláme následující:
Jak vidíme na obrázku, první věc, kterou uděláme, je import modulu, poté navážeme spojení a řekneme mu, že naše databáze bude volána somedatabse.db, s tím SQLite vytvoří soubor, kam bude umístěn databázový stroj, v tomto případě bude vytvořen ve stejném adresáři jako náš program.
Poté musíme získat kurzor, což je objekt, který nám pomůže komunikovat s databázovým strojem. K vytvoření kurzoru máme následující:
Nakonec máme dvě metody: první pro efektivní uložení toho, co provedeme v souboru, a druhou pro možnost uzavřít připojení k databázi, podívejme se na každou z nich:
Základní část už máme probranou, co když teď uděláme malou testovací aplikaci, kde tyto znalosti aplikujeme:
Řekněme, že chceme otevřít textový soubor a předat jeho obsah do databáze, abychom mohli provádět dotazy pomocí SQL dotazy Abychom urychlili lokalizaci obsahu, předpokládejme, že náš soubor má následující strukturu:
~ 07276 ~ ~ HORMEL SPAM… Vepřové maso se šunkou MINCED CND ~ ^… ~ 1 porce ~ ^~~ 0
Kde každé pole začíná znakem ~ a je od ostatních polí odděleno znakem ^, podívejme se, jak by náš kód vypadal:
import sqlite def convert (hodnota): if value.startswith ('~'): return value.strip ('~') if not value: value = '0' return float (value) conn = sqlite.connect ('food. db ') curs = conn.cursor () curs.execute (' '' CREATE TABLE food (id TEXT PRIMARY KEY, desc TEXT, water FLOAT, kcal FLOAT, protein FLOAT, fat FLOAT, ash FLOAT, carbs FLOAT, fiber FLOAT, cukr FLOAT) '' ') field_count = 10 markerů =', '.join (['% s '] * field_count) query =' INSERT INTO food VALUES (% s) '% markers for line in open (' ABBREV.txt '): fields = line.split (' ') vals = [převést (f) na f v polích [: field_count]] curs.execute (dotaz, vals) conn.commit () conn.close ()
Části, které zde musíme zdůraznit, jsou použití objektu curs což nám pomáhá vytvořit databázi a poté curs.execute () kde předáme dotaz a hodnoty, které jsme zpracovali ze souboru, na konci zpracování provedeme a conn.commit () tak, aby to, co je provedeno, bylo uloženo do souboru a poté pomocí conn.close () zavíráme připojení k databázi.Líbil se vám tento návod a pomohl mu?Autora můžete odměnit stisknutím tohoto tlačítka, čímž mu dáte kladný bod