Dažniausias masinio įterpimo būdas PostgreSQL yra komanda COPY, kuri gali paimti duomenis iš failo arba standartinės įvesties ir įterpti juos į lentelę. Komanda COPY reikalauja, kad duomenys būtų tam tikro formato, dažniausiai CSV arba teksto failo.
Panagrinėkime, kaip naudoti šią komandą norint atlikti masinį įterpimą „PostgreSQL“.
PostgreSQL masinis įterpimas
Išnagrinėkime veiksmus, kaip atlikti masinį įterpimą „PostgreSQL“.
Paruoškite savo duomenis
Prieš atlikdami masinį įterpimą, įsitikinkite, kad tiksliniai duomenys yra tinkamo formato. Rekomenduojame duomenis konfigūruoti CSV arba TSV formatu. Tikslinius duomenis galite suskirstyti į eilutes ir stulpelius, kurie yra atskirti kableliais arba skirtukais.
Prisijunkite prie PostgreSQL
Tada prisijunkite prie savo PostgreSQL duomenų bazės naudodami norimą klientą. Šiam vadovui naudojame PSQL įrankį, kad būtų lengviau naudoti ir pasiekti universalią prieigą.
$ psql -IN postgres -d < duomenų bazės_pavadinimas >
Pavyzdžiui, norėdami naudoti duomenų bazę user_information, galite paleisti šią užklausą:
$ psql -IN postgres -d vartotojo_informacijaJei neturite tikslinės duomenų bazės, galite ją sukurti naudodami komandą CREATE DATABASE:
KURTI DUOMENŲ BAZĘ < db_vardas >
Sukurkite lentelę
Tada turime užtikrinti, kad lentelė, kurioje norime įterpti duomenis, būtų. Lentelės struktūra turi atitikti duomenų struktūrą, įskaitant palaikomus duomenų tipus.
Jei lentelės nėra, galite naudoti komandą CREATE TABLE:
CREATE TABLE network_users (id SERIJOS PIRMINIS RAKTAS,
vartotojo vardas VARCHAR ( 255 ) NE NULL,
ip_adresas INET,
mac_address MACADDR,
mimikos TEKSTAS
) ;
Pateikta komanda turėtų sukurti lentelę pavadinimu 'tinklo_vartotojai' su ID, vartotojo vardu, ip_adresu, mac_adresu ir MIME stulpeliais.
Kai lentelė bus paruošta, galime įkelti duomenis į PostgreSQL lentelę. Vėlgi, verta užtikrinti, kad duomenų failas būtų pasiekiamas iš įrenginio, kuriame veikia serveris.
Vykdykite masinį įterpimą
Tada galime naudoti komandą COPY, kad įkeltume duomenis iš failo į duomenų bazės lentelę. Komandos sintaksė yra tokia:
KOPIJUOTI lentelės_pavadinimą ( 1 stulpelis, 2 stulpelis, 3 stulpelis )NUO „kelias/į/duomenų_failą“
SU ( FORMATAS csv | tekstas, DELIMITER 'ribotuvas' , ANTRAŠTĖ ) ;
Galite nurodyti formatą (CSV arba tekstą), faile naudojamą skyriklį (pvz., „,“ – CSV, „\t“ – TSV) ir ar faile yra antraštės eilutė.
Pavyzdžiui, norėdami nukopijuoti duomenis į lentelę „network_users“, komandą galime paleisti taip:
nukopijuokite tinklo_vartotojus ( id , vartotojo vardas, ip_adresas, mac_adresas, mime ) iš 'tinklo_naudotojai.csv' su ( CSV formatas, skyriklis ',' , antraštė ) ;
Tai leidžia PostgreSQL įkelti duomenis iš failo į lentelę. Galite patikrinti, ar įterpimas sėkmingas, užklausę lentelės duomenis.
PostgreSQL masinis įterpimas PgAdmin
Taip pat galime naudoti grafinę sąsają, kurią pgAdmin suteikia duomenų failui importuoti.
Pradėkite paleisdami pgAdmin ir prisijunkite prie savo PostgreSQL duomenų bazės pateikdami reikiamą ryšio informaciją.
Tada suraskite lentelę, kurioje norite atlikti masinį įterpimą. Savo duomenų bazes ir lenteles galite rasti naršyklės skydelyje.
Dešiniuoju pelės mygtuku spustelėkite lentelę ir pasirinkite „Importuoti / eksportuoti“.
„Importavimo / eksportavimo“ vedlyje pasirinkite parinktį „Importuoti“ ir pasirinkite duomenų šaltinio tipą. Pavyzdžiui, galite importuoti užklausą arba iškarpinę iš failo.
Kitame veiksme pateikite masinio įterpimo failo informaciją. Pasirinkite failo formatą (CSV, TSV, kad nurodytumėte kelią į duomenų failą ir nustatykite faile naudojamą skyriklį.
Kai būsite patenkinti failų importavimo parinktimis, spustelėkite „Gerai“, kad pradėtumėte importavimo procesą. Apatinėje dešinėje srityje turėtumėte matyti proceso būseną.
Galite patikrinti, ar importavimas sėkmingas, atidarę užklausos įrankį ir paleidę užklausą:
PASIRINKTI * FROM network_users;Išvestis :
Išvada
Ištyrėme, kaip naudoti PSQL ir pgAdmin masiniam įterpimui iš išorinio duomenų failo į PostgreSQL duomenų bazės lentelę.