Lahat ng pangunahing schema object ng PostgreSQL — structure, mga table, view, index, type, identity, routine, seguridad, at replication — sa iisang siksik na sanggunian.
Nag-iimbak ang PostgreSQL ng data sa mga pinangalanang schema object. May iisang trabaho ang bawat object: naglalaman ng mga row ang table, pinapabilis ng index ang mga lookup, naglalaman ng logic ang routine. Alamin kung ano ang bawat object bago piliin kung alin ang idaragdag, at ituring ang mga constraint at policy bilang mga patakaran na nagpapanatiling tapat ang data.
Talaan ng sanggunian · 45 mga entry
Mga Object ng DatabaseExplained
45 of 45 rows
Istruktura
Isang hiwalay na katalogo ng mga schema sa loob ng isang cluster.
Paghiwalayin ang mga application o environment na hindi dapat magbahagi ng data.
Isang pinangalanang namespace sa loob ng database na nagpapangkat ng mga magkakaugnay na object.
Mag-organisa ng mga object ayon sa feature o may-ari at iwasan ang banggaan ng mga pangalan.
Isang pinangalanang lokasyon sa disk kung saan inilalagay ang mga file ng table at index.
Ituro ang mga mainit na table sa mabilis na storage at panatilihin ang malamig na data sa murang disk.
Ang setting na nagpapasya kung aling mga schema reresolbahin ng hindi kwalipikadong pangalan ng object.
Ituro ang session sa tamang schema para makagamit ng maikling pangalan ang mga query.
Isang deskripsyon na nakaimbak sa alinmang database object gamit ang COMMENT ON.
Idokumento ang mga table at column sa lugar na mahahanap ito ng susunod na sumulat ng query.
Mga table at view
Isang pinangalanang relation na nag-iimbak ng mga row sa mga typed na column.
Pangunahing lalagyan ng permanenteng data.
Isang table na nabubura ang mga row sa dulo ng session o transaksyon.
Imbakin ang scratch o staged na data na hindi dapat lumampas sa buhay ng koneksyon.
Isang parent table na nahahati sa mga child partition ayon sa idineklarang key.
Panatilihing manage ang napakalalaking table sa pamamagitan ng pag-range o pag-lista ng mga row sa mga partition.
Isang table na nasa ibang sistema ang mga row, naaabot sa pamamagitan ng foreign data wrapper.
I-query ang isang remote na database o file na parang lokal na table ito.
Isang nakaimbak na query na ipinapakita bilang virtual na table.
Ipakita ang parehong mga row sa pamamagitan ng iba't ibang filter o join.
Isang simpleng view na ipinapasa ang INSERT, UPDATE, at DELETE sa base table nito.
Ipakita ang isang na-filter o naka-join na slice ng table na nananatiling writable.
Isang view na ang result set ay sinusulat sa disk at sini-refresh kapag kailangan.
I-cache ang mamahaling aggregate o join at basahin ang mga ito nang mabilis.
Isang function na nagbabalik ng set ng mga row na magagamit kahit saan magkasya ang isang table.
Palawakin ang isang computed na set sa lugar, tulad ng paggawa ng unnest sa array upang maging mga row.
Mga index
Isang balanced-tree na index para sa equality at range na lookup.
Pabilisin ang WHERE, JOIN, at ORDER BY sa mga sortable na column.
Isang index na tumatanggi sa mga duplicate na value sa key nito.
Ipatupad ang uniqueness sa isang column o kombinasyon ng mga column.
Mga inverted o generalized search-tree na index para sa mga di-scalar na value.
I-index ang mga array, JSONB, full-text, o heometrikong data.
Isang index na ginawa lamang sa mga row na tumutugma sa isang WHERE clause.
I-index ang mainit na subset at laktawan ang iba para makatipid ng espasyo.
Mga type at extension
Isang user-defined na type na ang mga value ay mula sa nakapirming listahan ng mga label.
I-limit ang isang column sa saradong set tulad ng mga status code.
Isang base type na may check constraint, pinangalanan para magamit muli bilang column type.
Ibahagi ang isang napatunayang depinisyon, tulad ng hindi blangkong text, sa maraming column.
Isang set ng patakaran na nagdedepinisyon kung paano naghahambing at nagso-sort ang mga string.
Makuha ang tamang pagkakasunod-sunod para sa case, accent, o isang partikular na locale.
Isang nai-install na package na nagdaragdag ng mga function, type, o operator sa isang database.
Gumamit ng subok na tool tulad ng PostGIS o pg_trgm sa isang hakbang.
Identity at mga generated
Isang standalone na counter object na nagbibigay ng magkakasunod na integer.
Magbigay ng serial key kapag nagbabahagi ng isang generator ang maraming table.
Isang column ng table na hawak ng internal na sequence, ayon sa SQL standard.
Modernong auto-incrementing na primary key, mas mainam kaysa SERIAL.
Isang column na ang value ay kinukalkula mula sa ibang column ng parehong row.
Imbak o ipakita ang isang derived na value nang walang manu-manong pagsulat.
Mga routine
Isang pinangalanang bloke ng SQL na nagbabalik ng value o mga row.
I-encapsulate ang reusable na logic at tawagin ito sa loob ng mga query.
Isang pinangalanang bloke na nagpapatupad ng mga aksyon at kumokontrol sa sarili nitong transaksyon.
Multi-step na ETL kung saan ang routine mismo ang nagko-commit o nagro-roll back sa loob.
Isang routine na pinaliliit ang maraming input row sa isang value sa pamamagitan ng state at final function.
Mag-define ng custom na reduksyon tulad ng weighted average.
Isang simbolo na nakatali sa isa o higit pang function para sa partikular na uri ng operand.
Bigyan ng natural na syntax ang sarili mong type tulad ng a + b o @>.
Isang idineklarang daan ng conversion mula sa isang type patungo sa isa pa.
Kontrolin kung paano nagbabago ng type ang mga value, kasama kung aling conversion ang nangyayari nang implicit.
Isang routine na nakatali sa event ng table na kusang nagpa-trigger.
I-audit, i-validate, o i-cascade ang mga pagbabago sa INSERT, UPDATE, o DELETE.
Isang trigger na nagpa-trigger sa mga event sa antas ng database tulad ng mga DDL command.
I-log, harangin, o i-audit ang mga pagbabago sa schema sa buong database.
Isang na-parse na query na nakaimbak para sa paulit-ulit na pagpapatupad na may nakataling parameter.
Gamitin muli ang isang parse at plan sa maraming pagtakbo ng parehong query.
Isang handle na nakahawak ng bukas na result set para sa row-by-row na pagkuha.
Mag-page sa malalaking resulta o maglakad sa mga row sa loob ng isang routine.
Seguridad at mga patakaran
Isang pinangalanang identity na may hawak na pribilehiyo; ang user ay role na makakalog-in.
I-grupo ang mga pahintulot nang minsan, pagkatapos ibigay ang mga ito sa mga tao, serbisyo, o ibang role.
Mga statement na nagtatalaga ng pribilehiyo sa mga object para sa mga role, o nag-aalis nito.
Ipasya kung aling role ang makakabasa, makakasulat, o makakapagpatakbo ng bawat object.
Ang likas na karapatan ng creator na baguhin o i-drop ang isang object, hiwalay sa mga grant.
Ipangalan ang role na responsable sa lifecycle ng isang object.
Isang nakatayong instruksyon na kusang nagbibigay ng pribilehiyo sa mga object na gagawin ng isang role sa hinaharap.
I-set nang maaga ang mga karapatan para hindi na kailangan ng manu-manong grant ang mga bagong table para sa app role.
Isang patakaran na tumatanggi sa mga pagsulat na lumalabag sa idineklarang kundisyon.
Ipatupad ang mga garantiya ng NOT NULL, CHECK, UNIQUE, PRIMARY KEY, at FOREIGN KEY.
Isang patakaran bawat role na nagtatago ng mga row na hindi dapat makita ng session.
Paghihiwalay ng tenant o access bawat user nang hindi muling sinusulat ang mga query ng application.
Isang alias na reresolba ng isang pangalan sa isang object sa ibang lugar; native sa Oracle at SQL Server.
I-port ang mga layout ng schema; sa PostgreSQL gamitin ang search_path.
Isang depinisyon kung aling mga aksyon ang naitala para sa pagsusuri, sa pamamagitan ng pgaudit o tool ng vendor.
Patunayan kung sino ang nagbasa o nagbago ng ano, para sa compliance at pagsisiyasat.
Isang instruksyon na muling sinusulat ang papasok na query sa ibang command.
Lumang paraan ng pag-redirect ng pagsulat; mas gusto ng PostgreSQL ngayon ang trigger o updatable na view.
Replication
Isang depinisyon sa panig ng sender kung aling mga table at uri ng pagbabago ang umaagos papunta sa mga replica.
Ideklara kung ano ang inaalok ng database sa mga subscriber ng logical replication.
Isang receiver na kumokonekta sa isang publication at inilalapat ang mga pagbabago nito sa lokal na mga table.
Hilahin ang mga pagbabago mula sa ibang PostgreSQL database papunta dito.
Isang marker na nagpapanatili sa primary na hawakan ang WAL hanggang mabasa ito ng consumer.
Garanstiyahin na ang isang standby o subscriber ay makakatuloy nang walang mawawalang pagbabago.