Kas DDL-i käsud on automaatsed?
Kas DDL-i käsud on automaatsed?

Video: Kas DDL-i käsud on automaatsed?

Video: Kas DDL-i käsud on automaatsed?
Video: Class 64: How to use Wayken Hemmer/ Hem Folder for industrial or pedal sewing machines 2024, Mai
Anonim

On ( DDL ) Andmetöötluskeel avaldusedAutomaatne kinnitamine ? Ei. Ainult DDL (Andmete määratlemise keel) avaldused nagu luua, muuta, tilk, kärpida on automaatne kinnitamine.

Kas selle kõrval on DML-käsud automaatne kinnitamine?

Vaikimisi on a DML avaldus, mis täidetakse ilma tehingut selgesõnaliselt alustamata, kinnitatakse automaatselt õnnestumise korral või tühistatakse avalduse lõpus ebaõnnestumise korral. Seda käitumist nimetatakse automaatne kinnitamine . Seda käitumist kontrollitakse AUTOMAATNE KOHUSTUS parameeter. DDL avaldused alati automaatselt kinnitatud.

Seejärel tekib küsimus, mis on automaatne kinnitamine SQL-is? Andmehalduse kontekstis automaatne kinnitamine on andmebaasiühenduse töörežiim. Alternatiiv sellele automaatne kinnitamine režiim (mitte- automaatne kinnitamine ) tähendab, et SQL kliendirakendus ise vastutab tehingu algatamise (tehingu alustamise) ja lõpetamise (commitor backback) käskude väljastamise eest.

Siis kas DDL nõuab sidumist?

TRUNCATE on a DDL käsk, nii et see ei vaja selgesõnalist pühenduma sest selle kutsumine teostab implitsiitset pühenduma . Süsteemi disaini vaatenurgast on tehing kuritarvitamise tööühik. See võib koosneda ühest DML-lausest või mitmest neist. Vahet pole: ainult täistehingud nõuda COMMIT.

Mis juhtub, kui Autocommit on sisse lülitatud?

Kui AUTOCOMMIT on seadistatud väärtusele 1, loetakse iga SQL-lause täielikuks tehinguks ja vaikimisi, kui see lõpeb. Kui AUTOCOMMIT on seadistatud 0-ni toimivad järgmised avalduste seeriad nagu tehing ja ühtegi tehingut ei sooritata enne, kui on välja antud selgesõnaline COMMIT-avaldus.

Soovitan: