Čarobne tabele v strežniku SQL Server

Blog

Čarobne tabele v strežniku SQL Server

V strežniku SQL Server so čarobne tabele (navidezne tabele), ki hranijo časovne podatke nedavno vstavljenih in nedavno izbrisanih podatkov v navidezni tabeli. INSERTED in DELETED sta dve vrsti čarobnih tabel v strežniku SQL Server. Čarobna tabela INSERTED je poseljena z operacijami INSERT in UPDATE, magična tabela DELETED pa z operacijami UPDATE in DELETE.



Čarobna tabela INSERTED shrani prejšnjo različico vrstice, tabela DELETED pa zadnjo različico vrstice za vse operacije INSERT, UPDATE ali DELETE.

Čarobno mizo je mogoče uporabiti pri dejavnostih VSTAVITI, UPDATE in IZBRIŠI z mizo v sprožilcu, kar je skupno razumevanje ljudi. SQL Server uporablja čarobne tabele zunaj TRIGGERja tudi za številne druge namene. Uporaba čarobnih tabel v strežniku SQL Server z običajno izjavo o posodobitvi zmanjša odvisnost od informacij in vaše podatke uskladi s transakcijo.



VSTAVI : V čarobni tabeli INSERTED bodo na vrhu tabele na novo vstavljene vrstice z operacijo vstavljanja. Z njim lahko upravljate revizijo tabele v drugi tabeli zgodovine.

IZBRIŠI : V čarobni tabeli DELETED bodo nedavno izbrisane vrstice na vrhu tabele z operacijo brisanja. Z njim lahko upravljate prejšnjo različico vrstice za namen revizije v tabeli zgodovine.



NADGRADNJA : Navidezne tabele INSERTED in DELETET bodo del izjave o posodobitvi. Izjava o posodobitvi vrne izbrisano čarobno tabelo s prejšnjo različico vrstice in vstavljeno čarobno tabelo z novo različico vrstice, ki bo zamenjana ali posodobljena s prejšnjimi vrednostmi v tabeli. Pomembno je, da se vsakič, ko uporabniki izvedejo izjavo o posodobitvi znotraj sprožilca ali zunaj sprožilca, uporabijo čarobne tabele INSERTED in DELETED.

Vstavljene in izbrisane čarobne tabele v strežniku SQL Server

Pogosta uporaba čarobnih tabel v strežniku SQL Server je sprožilec DML (Data Manipulation Language). Sprožilec SQL Server DML omogoča uporabo teh dveh navideznih tabel INSERTED in DELETED. Idealna uporaba sprožilca je revizija in upravljanje različice vrstice tabele pred in po operaciji INSERT, UPDATE ali DELETE v stavku transakcije. Tudi uporabniki lahko s temi magičnimi tabelami znotraj sprožilca napišejo logiko upravljanja podatkov.

Čarobna miza je shranjena v temp DB. Zato bo vedno, ko uporabite čarobne tabele v strežniku SQL Server z izjavo poizvedbe, na sliki prišel tempdb.

Kadar koli čarobna tabela uporablja poizvedbo v transakciji, bo ta stavek vplival na tempdb. Spodaj so omejitve čarobne mize v primerjavi z dejansko tabelo temp (tabela ##)

  • Uporabniki ne morejo ustvariti nobenega indeksa ali omejiti čarobnih tabel v strežniku SQL Server
  • Spremeniti jih ni mogoče, ker je namen čarobne mize revizija informacij v sistemu

#razvoj #sql

www.sqlshack.com

Čarobne tabele v strežniku SQL Server

V strežniku SQL Server so čarobne tabele (navidezne tabele), ki hranijo časovne podatke nedavno vstavljenih in nedavno izbrisanih podatkov v navidezni tabeli. INSERTED in DELETED sta dve vrsti čarobnih tabel v strežniku SQL Server.