Bir SQL işlemi, bir veya daha fazla SQL işleminin dizisidir (örn.INSERT UPDATE DELETE) tek bir iş birimi olarak yürütülür. İşlemler, veri bütünlüğünü koruyarak tüm işlemlerin başarılı olmasını veya hiçbirinin uygulanmamasını sağlar.
SQL İşlemlerinin Temel Özellikleri: ACID
SQL işlemlerinin bütünlüğü, güvenilir veritabanı işlemlerini garanti eden ACID özellikleri tarafından yönetilir. Bu dört özellik, veritabanının tutarlı ve güvenilir kalmasını garanti etmek için birlikte çalışır.
- Atomiklik: Bir işlemin sonucu tamamen başarılı ya da tamamen başarısız olabilir. Bir kısmı başarısız olursa işlemin tamamı geri alınmalıdır.
- Tutarlılık: İşlemler, veritabanını geçerli bir durumdan diğerine taşıyarak bütünlük kısıtlamalarını korur.
- İzolasyon: Eşzamanlı işlemler birbirinden izole edilerek verilerin doğruluğu sağlanır.
- Dayanıklılık: Bir işlem gerçekleştirildikten sonra, bir sistem arızası durumunda bile, yapılan değişiklikler yürürlükte kalır.
SQL İşlem Kontrol Komutları
SQL işlem kontrolünde komutlar şunları yönetir: Veritabanı işlemlerinin bütünlüğünü ve güvenilirliğini sağlayan SQL işlemlerinin yürütülmesi. Bu komutlar, veritabanında yapılan değişikliklerin başlatılmasını ve geri alınmasını yönetmeye yardımcı olur. Aşağıda SQL'deki temel işlem kontrol komutları sözdizimi ve her biri için örneklerle açıklanmıştır.
1. İŞLEMİ BAŞLAT Komutu
BEGIN TRANSACTIONkomut yeni bir işlemin başlangıcını işaret eder. Bu komutu izleyen tüm SQL ifadeleri, bir işlem tamamlanıncaya kadar aynı işlemin parçası olacaktır.COMMIT veya ROLLBACK karşılaşılır. Bu komut veritabanında herhangi bir değişiklik yapmaz, sadece işlemi başlatır.
Sözdizimi:
BEGIN TRANSACTION transaction_name ;Banka Transferi Senaryosu ile SQL İşlemi Örneği
İki hesap arasındaki banka havalesi örneğine bakalım. Bu örnek, tek bir işlemde birden çok sorgunun kullanımını gösterir.
BEGIN TRANSACTION;
-- Deduct 0 from Account A
UPDATE Accounts
SET Balance = Balance - 150
WHERE AccountID = 'A';
-- Add 0 to Account B
UPDATE Accounts
SET Balance = Balance + 150
WHERE AccountID = 'B';
-- Commit the transaction if both operations succeed
COMMIT;
Bir sorun gibi herhangi bir hata meydana gelirseUPDATEkullanabileceğiniz sorguROLLBACKişlem sırasında yapılan tüm değişiklikleri geri almak için:
ROLLBACK;Bu, sistemin bir hesaptan para çekip diğerine ekleme gibi tutarsız bir duruma düşmemesini sağlar.
BEGIN TRANSACTION TransferFunds;2. COMMIT Komutu
COMMITkomutu, geçerli işlem sırasında yapılan tüm değişiklikleri veritabanına kaydetmek için kullanılır. Bir işlem gerçekleştirildikten sonra değişiklikler kalıcı olur.
Sözdizimi:
COMMIT;Örnek
İşte örnekStudentBu örnekteki işlemleri gerçekleştirmek için kullanılacak tablo. Bu tablo, kimlik adı yaşı gibi temel öğrenci ayrıntılarını ve çeşitli yöntemler kullanılarak değiştirilecek diğer ilgili bilgileri içerir. işlem kontrol komutları.
google ne anlama geliyor
Öğrenci MasasıAşağıda, age = 20 olan kayıtları tablodan silecek ve ardından veritabanındaki değişiklikleri KABUL EDECEK bir örnek verilmiştir.
DELETE FROM Student WHERE AGE = 20;
COMMIT;
Çıkış
çıktı3. GERİ DÖNME Komutu
ROLLBACKkomutu, geçerli işlemde yapılan tüm değişiklikleri geri almak için kullanılır. Bir hata oluştuğunda veya istenilen değişiklikler tamamlanamadığında kullanılır. Veritabanı, önceki durumuna geri dönecektir. BEGIN TRANSACTION idam edildi.
Sözdizimi:
ROLLBACK;Örnek
Yaş = 20 olan kayıtları tablodan silin ve ardından veritabanındaki değişiklikleri GERİ DÖNÜN. Bu durumda DELETE işlem geri alınır ve veritabanındaki değişiklikler kaydedilmez.
DELETE FROM Student WHERE AGE = 20;
ROLLBACK;
Çıkış:
çıktı4. KAYDETME NOKTASI Komutu
ASAVEPOINToluşturmak için kullanılır kontrol noktası bir işlem dahilinde. Belirli bir duruma geri dönebilirizSAVEPOINTişlemin tamamını geri almak yerine. Bu, işlemin bir kısmını geri almamıza olanak tanır. tüm işlem.
Sözdizimi:
SAVEPOINT SAVEPOINT_NAME;Örnek
SAVEPOINT SP1;
//Savepoint created.
DELETE FROM Student WHERE AGE = 20;
//deleted
SAVEPOINT SP2;
//Savepoint created.
Çıkış:
çıktıAçıklama:
Yukarıdaki örnekten Örnek tablo1 Yaş = 20 olan kayıtları tablodan silin ve ardından Kayıt Noktalarını koruyarak veritabanındaki değişiklikleri GERİ ALIN. Burada SP1, silinmeden önce oluşturulan ilk SAVEPOINT'tir. Bu örnekte bir silme işlemi gerçekleştirilmiştir. Silme işleminden sonra tekrar SAVEPOINT SP2 oluşturulur.
5. KAYIT NOKTASINA GERİ DÖN
ROLLBACK TO SAVEPOINTkomutu, o noktadan sonra yapılan değişiklikleri etkili bir şekilde geri alarak, işlemi belirli bir kayıt noktasına geri almamızı sağlar.
Sözdizimi:
ROLLBACK TO SAVEPOINT SAVEPOINT_NAME;Örnek
Silme işlemi gerçekleşti diyelim ki fikrimizi değiştirdik ve silme işleminden önceki SP1 olarak belirlediğimiz KAYIT NOKTASINA GERİ DÖNME kararı aldık. Yani bu durumdaDELETEişlem geri alınır ve işlem o anki durumuna geri döner.SP1kaydetme noktası.
ROLLBACK TO SP1;
//Rollback completed
Çıkış:
çıktı6. KAYDETME NOKTASINI SERBEST BIRAK Komutu
Bu komut oluşturduğumuz bir SAVEPOINT'i kaldırmak için kullanılır. Bir KAYDETME NOKTASI serbest bırakıldığında artık ROLLBACK'i kullanamayız. Son KAYDETME NOKTASI'ndan bu yana gerçekleştirilen işlemleri geri alma komutu. Bir veritabanı işlemini başlatmak için kullanılır ve takip eden işlemin özelliklerini belirtmek için kullanılır.
Sözdizimi:
RELEASE SAVEPOINT SAVEPOINT_NAME;Örnek
Kayıt noktası bir kezSP2serbest bırakıldığında artık geri dönemeyiz.
RELEASE SAVEPOINT SP2; -- Release the second savepoint.Bankacılıkta İşlemler Neden Kullanılmalıdır?
Bu durumda, bir işlem yapılmadığında, paranın bir hesaptan düşüldüğü ancak diğerine eklenmediği ve sistemi tutarsız bir durumda bırakan senaryolar riskiyle karşı karşıya kalırsınız. İşlemler, her iki operasyonun birlikte başarılı veya başarısız olmasını garanti ederek bu tür sorunların önlenmesini sağlar.
c programları
SQL İşlem Türleri
Niteliklerine ve gerçekleştirdikleri spesifik işlemlere bağlı olarak farklı işlem türleri vardır:
- İşlemleri Oku : Yalnızca tipik olarak verileri okumak için kullanılır
SELECTsorgular. - İşlem Yaz : Bunlar veritabanındaki verilerin değiştirilmesini içerir.
INSERTUPDATEveyaDELETEoperasyonlar. - Dağıtılmış İşlemler : Bu işlemler birden fazla veritabanına yayılır ve bunlar arasında tutarlılık sağlar.
- Örtülü İşlemler : Belirli işlemler için SQL Server tarafından otomatik olarak başlatılır.
- Açık İşlemler : Kullanıcının işlemi kullanarak başlattığı ve bitirdiği, manuel olarak kontrol edilen işlemler
BEGIN TRANSACTIONCOMMITVeROLLBACK.
SQL İşlemlerini İzleme ve Optimize Etme
Performansı korumak ve sorunları önlemek için aşağıdaki teknikleri göz önünde bulundurun:
Java yöntemini içerir
1. Monitör Kilitleri : Kilitleme davranışını izleyin ve kilitleme çakışmalarını en aza indirecek şekilde sorguları ayarlayın.
2. İşlem Kapsamını Sınırlandırın : İşlemeyi hızlandırmak için bir işlemden etkilenen satır veya kayıt sayısını sınırlayın.
3. Toplu İşlemeyi Kullanın : Büyük miktarda veriyle uğraşıyorsanız, sistemin aşırı yüklenmesini önlemek için işlemleri daha küçük işlemlere veya gruplara bölün.
Önerilen Test Testi Düzenle 5 SoruAşağıdaki senaryolardan hangisi ACID'deki 'İzolasyon' özelliğinin ihlalini en iyi şekilde tanımlar?
- A
Bir işlem, veritabanını birincil anahtar kısıtlamasını ihlal eden bir durumda bırakır.
- B
Eşzamanlı olarak çalışan iki işlem aynı verileri okuyup yazıyor ve bu da tutarsız sonuçlara yol açıyor.
- C
Kullanıcı bir kaydı başarıyla günceller ancak sistem çökmesi değişikliği siler.
- D
Bir işlem yarı yolda başarısız olur ve tüm değişiklikleri geri alınır.
Bu, bir işlemin ara durumunun diğerine görünür olduğu izolasyon ihlalinin klasik bir örneğidir.
Bir bankacılık uygulamasında fon transferi, bir hesabın borçlandırılmasını ve diğerinin alacaklandırılmasını içerir. Hangi ACID özelliği her iki işlemin de tamamlanmasını veya hiçbirinin tamamlanmamasını sağlar?
- A
İzolasyon
- B
Atomiklik
- C
Dayanıklılık
- D
Tutarlılık
Atomicity, bir işlem içindeki tüm işlemlerin başarıyla tamamlanmasını sağlar; aksi takdirde işlemin tamamı geri alınır.
Bir işlem gerçekleştirilir ve bir 'COMMIT' verilir. Elektrik kesintisi meydana geldikten hemen sonra. Hangi ACID özelliği, işlem tarafından yapılan değişikliklerin sistem yeniden başlatıldıktan sonra hala mevcut olduğunu garanti eder?
- A
Tutarlılık
- B
Atomiklik
- C
Dayanıklılık
- D
İzolasyon
Dayanıklılık, bir işlemin gerçekleştirildikten sonra elektrik kesintisi veya sistem çökmesi durumunda bile aynı kalmasını sağlayan özelliktir.
Bir işlemde 'SAVEPOINT' komutunun birincil amacı nedir?
java nasıl geçersiz kılınır
- A
İşlemin bir kısmını taahhüt etmek.
- B
Bir işlemde daha sonra geri dönebileceğiniz bir noktayı işaretlemek için.
- C
İşlemin durumunu kalıcı olarak kaydetmek için.
- D
İşlemi sonlandırmak ve tüm değişiklikleri kalıcı hale getirmek.
'SAVEPOINT' bir işlem içinde kısmi geri dönüşlere izin verir.
Şu işlemi düşünün: 'İŞLEMİ BAŞLATIN; SOKMAK ...; KAYIT NOKTASI A; GÜNCELLEME ...; KAYIT NOKTASI B; SİLMEK ...; KAYIT NOKTASI A'YA GERİ DÖNÜN;' 'ROLLBACK' komutundan sonra işlemin durumu nedir?
- A
İşlemin tamamı geri alınır.
- B
Yalnızca 'SİL' işlemi geri alınır.
- C
En güncel olmayan bir kayıt noktasına geri dönemediğiniz için bir hata oluşur.
- D
'INSERT' kaydedilir ancak 'UPDATE' ve 'DELETE' geri alınır.
'KAYDETME NOKTASI A'ya geri dönmek, o kayıt noktasından sonra yapılan 'GÜNCELLEME' ve 'SİL' olan tüm değişiklikleri geri alır.
Sınav Başarıyla Tamamlandı Puanınız : 2/5Kesinlik : %0Açıklamayı Görmek İçin Giriş Yapın 1/5 1/5 < Previous Sonraki >