TRUNCATE instrucțiune TABLE - o instrucțiune care nu este inclusă în standardul ANSI, care șterge permanent toate rândurile din tabel, fără a fi conectat elimina liniile individuale. Această declarație șterge rapid toate înregistrările din tabel, fără a afecta structura tabelului și fără a lua în sus sau de a lua foarte puțin spațiu în jurnalele rollback sau jurnalele de tranzacții. Cu toate acestea, din moment ce această operație nu este jurnalizată, instrucțiuni tabel trunchia nu poate fi anulată după executarea.
sintaxa standard de facto
Oficial, TRUNCATE TABLE nu este o comandă standard de ANSI. Cu toate acestea, există un standard, care este susținută de platforma și care are următorul format.
TRUNCATE nume_tabelă TABEL
Cuvinte cheie
Numele orice tabel din baza de date curentă sau schemă.
reguli generale
TRUNCATE instrucțiune TABLE are același efect ca și instrucțiunea DELETE, fără a oferi unde. Ambele instrucțiuni sunt eliminate toate rândurile din tabel. Cu toate acestea, există două diferențe importante. TRUNCATE instrucțiune TABLE este mai rapid și nu jurnalizat, ceea ce înseamnă că nu se poate rula din nou în cazul unei erori. În plus, TRUNCATE TABLE nu se activează declanșează, în timp ce ștergeți-le activează.
Sfaturi și trucuri de programare
Deoarece declarația tabel trunchia nu este conectat, acesta este de obicei folosit în baza de date în procesul de dezvoltare. În bazele de date de lucru trebuie utilizat cu prudență!
TABELUL într-o procedură stocată sau funcție în programul de aplicație, deoarece cele mai multe platforme nu --- zhurialiruyut această operație și nu va fi în măsură să anuleze instrucțiunile incorect depuse.
comandă tabel trunchia eșuează dacă un alt utilizator a blocat tabela la momentul când a fost dat comanda. TRUNCATE TABLE nu activează declanșatoare, ci va lucra cu ei. Cu toate acestea, ghidul nu funcționează în cazul în care masa are constrangeri.
Versiunea 8 DB2 nu suportă TABLE TRUNCATE.
Platforma MySQL de la versiunea 3.23, suporta formatul de bază declarație tabel trunchia.
TRUNCATE nume de tabel
Platforma MySQL obține rezultatul dorit prin îndepărtarea și restabilirea tabelului menționat. Deoarece MySQL stochează fiecare tabel într-un fișier numit nume. / Rm, pentru funcționarea corectă a echipei cu numele fișierului trebuie să existe în directorul care conține fișierele bazei de date.
De exemplu, următoarea declarație elimină toate datele din tabelul de editori.
TRUNCATE editori TABLE
Platforma Oracle vă permite să ștergeți un tabel sau un cluster indexată (dar nu un cluster hash). Sintaxa este după cum urmează.
ghid TABEL TRUNCATE apărut pentru prima dată pe platforma Oracle, și alți producători au introdus un sprijin pentru această afirmație în scurt timp. În Oracle, acest ghid au fost adăugate caracteristici avansate, care sunt adesea susținute de alți producători.
Elemente de sintaxă în Oracle următoarele
Statele vor fi șterse tabel indexate sau cluster. Indexată Cluster - un construct care stochează rânduri de două tabele legate pe disc fizic unul lângă altul pentru accelerarea compus prin reducerea sarcinii pe canalele de intrare-ieșire. Când ștergeți clusterului indexate nu se poate utiliza opțiuni cum ar fi LOG instantaneul și STOCARE.
PRESERVE MA TERIALIZED VIEWLOG
Când ștergeți tabelul principal păstrează toate revistele, fotografiile.
PURJARE materializata VIEW LOG Șterge toate jurnalele-fotografii.
Spațiul de pe disc eliberat prin eliminarea din seria este eliberată. REUTILIZARE DEPOZITARE
Spațiul de pe disc eliberat de rânduri eliminarea este atribuit acest tabel. De exemplu:
TRUNCATE SCON TABLE. autori
PRESERVE SNAPSHOT LOG REUSE STOCARE
În acest exemplu, ștergeți toate intrările din scott.authors tabel. Conservate log-imagine existente, iar masa poate fi reutilizat fixă scaunul ei eliberat.
PostgreSQL
Platforma PostgreSQL diferă puțin de standardul industriei predominante. cuvânt cheie tabel a fost adăugat.
TRUNCATE [nume TABLETĂ
cuvânt cheie TABLE este opțională. De exemplu, următoarea comandă elimină toate înregistrările din baza de date PostgreSQL autori de masă.
SQL Server
Platforma SQL Server suportă facto standardul predominant de industrie. A se vedea, de asemenea,
Informații suplimentare privind
Sintaxa pentru utilizarea / CREA ALTER TABLE, extensiile și completările
Ce este isnsturktsiya CREATE ROLE, sintaxă și caracteristici atunci când se utilizează sau cuvinte cheie
Normele și metodele de utilizare a UPDATE în bazele de date de pe platforme diferite
Caracteristici de utilizare CREATE SCHEMA, sintaxa de bază pentru utilizarea