İlk hata yakalama betiğin
products tablonun, stock sütununda tutulan veriyi kontrol eden herhangi bir kısıtı olmadığını fark ettin. stock değerinin her zaman 0'a eşit veya 0'dan büyük olması mantıklıdır.
Bir nedenle, aşağıdaki satırda bir hata var. Stok -1!
| product_id | product_name | stock | price |
|------------|--------------|-------|-------|
| 6 | Trek Neko+ | -1 | 2799 |
Sadece 0'a eşit veya 0'dan büyük stoklara izin verecek bir kısıtı products tablosuna ekleyen bir betik hazırlamak istiyorsun.
Eğer yalnızca 0'a eşit veya 0'dan büyük stoklara izin veren bu kısıtı eklersen, stok değeri -1 olan bir satır bulunduğu için çalıştırma başarısız olacaktır.
Bu betiği nasıl hazırlarsın?
Bu egzersiz
SQL Server'da İşlemler ve Hata Yönetimi
kursunun bir parçasıdırEgzersiz talimatları
- Kısıtı bir
TRYbloğuyla çevrele. - Kısıtı
productstablosuna ekle. - Hata mesajını bir
CATCHbloğuyla çevrele.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
-- Set up the TRY block
BEGIN ___
-- Add the constraint
ALTER TABLE ___
ADD CONSTRAINT CHK_Stock CHECK (stock >= 0);
___ ___
-- Set up the CATCH block
___ ___
SELECT 'An error occurred!';
END ___