Duomenų įterpimas į PostgreSQL duomenų bazę

Jei kuriam nors iš jūsų laukų reikalinga data arba laikas, jūs taip pat norėsite importuoti datetime modulį, kuris standartiškai pateikiamas su Python.

Norėdami atidaryti ryšį su duomenų baze, psycopg reikia dviejų argumentų: duomenų bazės pavadinimo ('dbname') ir vartotojo ('user') vardo. Ryšio atidarymo sintaksė yra tokia forma:

Savo duomenų bazėje naudosime duomenų bazės pavadinimą „Paukščiai“ ir vartotojo vardą „robert“. Programos ryšio objektui naudokime kintamąjį „connection“. Taigi, mūsų prisijungimo komanda bus tokia:

Natūralu, kad ši komanda veiks tik tuo atveju, jei abu kintamieji yra tikslūs: turi būti tikra duomenų bazė, pavadinta „Paukščiai“, prie kurios turi prieigą vartotojas, vardu „robertas“. Jei nė viena iš šių sąlygų nėra įvykdyta, „Python“ parodys klaidą.

Be to, „Python“ mėgsta sugebėti sekti, kur paskutinis liko, skaitydamas ir rašydamas į duomenų bazę. Psycopg tai vadinama žymekliu, tačiau savo programai naudosime kintamąjį „mark“. Taigi, mes galime sukurti šią užduotį:

instagram viewer

Nors kai kurie SQL įterpimo formatai leidžia suprasti arba nepažymėtą stulpelio struktūrą, įterpimo teiginiams naudosime šį šabloną:

Nors mes galėtume perduoti tokio formato teiginį psycopg metodui „vykdyti“ ir taip įterpti duomenis į duomenų bazę, tai greitai tampa sudėtinga ir painu. Geriau yra suskaidyti teiginį atskirai nuo komandos „vykdyti“ taip:

Galiausiai, perdavę duomenis „PostgreSQL“, turime juos perduoti duomenų bazei:

Dabar mes sukūrėme pagrindines savo funkcijos „įterpti“ dalis. Sudėjus, dalys atrodo taip:

Pastebėsite, kad mūsų teiginyje yra trys kintamieji: lentelė, stulpeliai ir reikšmės. Tai tampa parametrais, kuriais funkcija vadinama:

Mes, žinoma, turėtume sekti tai su doc ​​eilute:

Galiausiai turime funkciją įterpti duomenis į mūsų pasirinktą lentelę, naudodami stulpelius ir reikšmes, apibrėžtas kaip reikia.

Norėdami paskambinti šia funkcija, mes tiesiog turime apibrėžti lentelę, stulpelius ir reikšmes ir perduoti juos taip:

instagram story viewer