Pokud některé z vašich polí vyžadují datum nebo čas, budete chtít také importovat modul datetime, který je standardně dodáván s Pythonem.
Pro otevření připojení k databázi potřebuje psycopg dva argumenty: jméno databáze ('dbname') a jméno uživatele ('user'). Syntaxe pro otevření připojení má tento formát:
Pro naši databázi použijeme název databáze „Birds“ a uživatelské jméno „robert“. Pro objekt připojení v programu použijeme proměnnou 'connection'. Náš příkaz pro připojení bude tedy znít takto:
Tento příkaz bude samozřejmě fungovat pouze v případě, že jsou obě proměnné přesné: musí existovat skutečná databáze s názvem „Ptáci“, ke které má přístup uživatel s názvem „robert“. Pokud některá z těchto podmínek není splněna, Python vyvolá chybu.
Dále si Python rád přečte, kde naposledy při čtení a zápisu do databáze zůstal. V psycopg se to nazývá kurzor, ale pro náš program použijeme proměnnou 'mark'. Můžeme tedy zkonstruovat následující přiřazení:
Zatímco některé formáty vkládání SQL umožňují pochopenou nebo nestatovanou strukturu sloupců, pro naše příkazy vložení použijeme následující šablonu:
I když bychom mohli předat příkaz v tomto formátu metodě psycopg 'execute' a tak vložit data do databáze, rychle se to stane spletitým a matoucím. Lepším způsobem je rozdělit příkaz odděleně od příkazu 'execute' takto:
Nakonec, po předání dat PostgreSQL, musíme data odevzdat do databáze:
Nyní jsme vytvořili základní části naší funkce 'insert'. Díly dohromady vypadají takto:
Všimněte si, že v našem příkazu máme tři proměnné: tabulka, sloupce a hodnoty. Stávají se tak parametry, kterými se funkce nazývá:
Měli bychom to samozřejmě následovat řetězcem doc:
Nakonec máme funkci pro vkládání dat do tabulky dle našeho výběru, pomocí sloupců a hodnot definovaných podle potřeby.
Abychom tuto funkci mohli zavolat, musíme jednoduše definovat tabulku, sloupce a hodnoty a předat je následujícím způsobem: