Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:
Databricks SQL
Geçerli etkileşimli işlemi işler ve değiştirilen tüm tablolardaki tüm değişiklikleri kalıcı hale getirir. Etkileşimli işlemlere yönelik gereksinimler ve kullanım desenleri için bkz. Etkileşimli işlemler.
Sözdizimi
COMMIT [ TRANSACTION | WORK ]
Parametreler
Bu deyimin parametresi yok.
Notlar
- Etkin bir işlem yoksa yürütülürken
COMMITNO_ACTIVE_TRANSACTION hatası oluşur. -
COMMITBaşarısız olursa, işlem durduruldu ve yeni bir işleme başlamadan önce işlem durumunu sıfırlamak için açıkça çalıştırmanızROLLBACKgerekir. Hataların yaygın nedenleri arasında diğer eşzamanlı işlemlerle yaşanan yazma çakışmaları yer alır. - Bu deyimi yürütmek için etkin bir işlem ve işlem içinde okunan veya değiştirilen tüm nesneler üzerinde uygun izinlere sahip olmanız gerekir.
Örnekler
Aşağıdaki örneklerde etkileşimli işlemlerin nasıl işllği gösterilmektedir.
Temel işlem
Her deyimi ayrı ayrı çalıştırın.
BEGIN TRANSACTION;
-- Insert a new record
INSERT INTO my_table VALUES (1, 'test');
-- Update records in another table
UPDATE another_table
SET value = 'updated'
WHERE id = 5;
-- Commit all changes in both tables atomically
COMMIT TRANSACTION;
Kendi Yazdıklarını Oku
Her deyimi ayrı ayrı çalıştırın.
BEGIN TRANSACTION;
-- Insert new data
INSERT INTO customers VALUES (101, 'New Customer');
-- Update the newly inserted data
UPDATE customers SET name = 'Updated Customer Name' WHERE id = 101;
-- Query sees the updated value within the transaction
SELECT name FROM customers WHERE id = 101;
-- Returns 'Updated Customer Name'
-- Commit makes changes visible to other transactions
COMMIT;
Commit hatasıyla başa çıkmak
COMMIT Çakışmalar veya diğer hatalar nedeniyle başarısız olursa, açıkça geri dönmeniz gerekir. Her deyimi ayrı ayrı çalıştırın.
BEGIN TRANSACTION;
-- Make changes
UPDATE accounts SET balance = balance - 100 WHERE id = 1;
-- Attempt to commit
COMMIT;
-- If COMMIT fails (e.g., due to write conflict),
-- the transaction is aborted
-- You must explicitly roll back before starting a new transaction
ROLLBACK;
İlgili makaleler
- BEGIN TRANSACTION (etkileşimli işlemler): Etkileşimli bir işlem başlatın
- ROLLBACK: Etkileşimli bir işlemi geri alma ve tüm değişiklikleri atma
- ATOMIC bileşik deyimi (etkileşimli olmayan işlemler): Otomatik işleme ve geri alma ile birden çok SQL deyimini tek bir atomik işlem olarak çalıştırma
- İşlemler: İşlem desteğine, gereksinimlere ve sınırlamalara genel bakış
- İşlem modları: Etkileşimli olmayan ve etkileşimli işlemler için ayrıntılı desenler ve örnekler