Sil və Düşür
Həm Sil, həm də Düşdürmə əmrləri SQL (Strukturlaşdırılmış Sorğu Dili) ifadələrinə aiddir və verilənlər bazasından məlumatların silinməsi zamanı istifadə olunur. Sil DML (Data Manipulation Language) əmridir. İstifadəçinin müəyyən etdiyi şərtə uyğun olaraq cədvəldən bəzi və ya bütün verilənləri silir. Delete bəyanatı yalnız cədvəldəki məlumat qeydlərini silir, lakin cədvəl strukturu verilənlər bazasında eyni şəkildə təqdim olunur. Düşdürmə əmri DDL (Data Definition Language) ifadəsidir və o, Sil əmrindən fərqli şəkildə fəaliyyət göstərir. Bu şərti əsaslı bəyanat deyil, ona görə də bütün məlumatları cədvəldən silir, həmçinin cədvəl strukturunu və həmin cədvələ olan bütün istinadları verilənlər bazasından daimi olaraq silir.
Bəyanatı Sil
Yuxarıda qeyd edildiyi kimi, Delete bəyanatı təqdim edilmiş şərt əsasında cədvəldən məlumatları silir və bu tələb olunan şərti müəyyən etmək üçün Sil ilə Harada bəndi istifadə olunur. Harada bəndi Delete ilə ifadə edilmirsə, bütün cədvəl məlumatları cədvəldən silinir. Bununla belə, Sil əməliyyatında mövcud cədvəl strukturu eyni qalır. Beləliklə, istifadəçi yenidən cədvəldən istifadə etmək istəsə, cədvəl strukturunu təyin etməyə ehtiyac duymur. Sil DML əmri olduğundan, icra edildikdən sonra avtomatik olaraq həyata keçirilmir. Beləliklə, əvvəlki əməliyyatı geri qaytarmaq üçün bu geri qaytarıla bilər. Əks halda, dəyişiklikləri daimi etmək üçün Commit bəyanatı çağırılmalıdır. Delete əmrini yerinə yetirərkən o, hər bir sıra silinməsi üçün əməliyyat jurnalında qeydi qeyd edir. Beləliklə, bu əməliyyatın yavaşlamasına təsir göstərir. Həmçinin, o, icradan sonra istifadə olunan yeri boş altmır.
Aşağıdakılar Silinmə ifadəsi üçün sintaksisdir.
DAN SİLİN
və ya
HARADAN SİLİN
Düşmə Bəyanatı
Drop bəyanatı heç bir şərt olmadan verilənlər bazasından nəinki bütün cədvəl qeydlərini silir, həm də cədvəl strukturunu, bütünlük məhdudiyyətlərini, indekslərini və müvafiq cədvəlin giriş imtiyazlarını verilənlər bazasından daimi olaraq silir. Beləliklə, digər cədvəllər üçün bütün əlaqələr artıq mövcud deyil və cədvəl haqqında məlumat verilənlər lüğətindən silinir. Beləliklə, istifadəçi cədvəldən yenidən istifadə etmək istəyirsə, cədvəl strukturunu və cədvələ bütün digər istinadları yenidən təyin etməlidir. Drop DDL əmridir və əmr yerinə yetirildikdən sonra onu yenidən geri qaytarmaq mümkün deyil, çünki Drop əmri avtomatik öhdəlikdən istifadə edir. Buna görə də istifadəçi bu əmrdən istifadə edərkən çox diqqətli olmalıdır. Düşmə ifadəsi sistem cədvəllərində tətbiq edilə bilməz, həmçinin xarici açar məhdudiyyətləri olan cədvəllər üçün istifadə edilə bilməz.
Düşür əmri təkcə SQL cədvəlləri üçün deyil, həm də verilənlər bazası, görünüşlər və cədvəl sütunları üçün istifadə edilə bilər və bu obyektlərdə saxlanılan bütün məlumatlar obyektlərlə birlikdə həmişəlik itirilir.
Aşağıdakılar Düşdürmə əmri üçün tipik sintaksisdir.
YÜKLƏN CƏDVƏL
Silmək və buraxmaq arasındakı fərq nədir?
1. Sil və Bırak əmrləri cədvəl məlumatlarını verilənlər bazasından silir.
2. Lakin Sil əmri şərti əsaslı silməni həyata keçirir, Drop əmri isə cədvəldəki bütün qeydləri silir.
3. Həmçinin, Delete əmri yalnız cədvəldəki sətirləri silir və cədvəl strukturunu eyni şəkildə qoruyur, Drop əmri isə cədvəldəki və cədvəl strukturundakı bütün məlumatları, həmçinin verilənlər bazasından bütün digər istinadları silir.
4. Sil DML ifadəsidir, Drop isə DDL əmridir. Beləliklə, Silinmə əməliyyatı geri qaytarıla bilər və avtomatik icra edilmir, Düşdürmə əməliyyatı isə heç bir şəkildə geri qaytarıla bilməz, çünki bu, avtomatik icra edilmiş bəyanatdır.
5. Drop əmri xarici açar məhdudiyyətləri ilə istinad edilmiş cədvəllərdə istifadə edilə bilməz, halbuki Sil əmri bunun əvəzinə istifadə edilə bilər.
6. Düşdürmə əmri SQL tətbiqlərindəki Sil ifadəsi ilə müqayisədə yaxşı başa düşülərək diqqətlə istifadə edilməlidir.