RAISEERROR
और ROLLBACK
TSQL (Microsoft SQL Server) सिंटैक्स में उपयोग किया जाता है।
MySQL के मामले में, हम SIGNAL .. SET MESSAGE_TEXT ..
ट्रिगर के अंदर एक अपवाद फेंकने के लिए:
BEGIN
IF (DATEDIFF(CURRENT_DATE(),NEW.birth_date) < 6570) THEN
-- Throw Exception
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = 'Age is less than 18 years!';
END IF; -- A semicolon (delimiter) is missing here
END
<ब्लॉकक्वॉट> सामान्य SQLSTATE मान का संकेत देने के लिए, '45000' का उपयोग करें, जिसका अर्थ है "अनहेल्ड यूज़र-डिफ़ाइंड अपवाद।"
त्रुटि मान जो SIGNAL के निष्पादित होने के बाद पहुँच योग्य होते हैं, वे SIGNAL स्टेटमेंट और MESSAGE_TEXT और MYSQL_ERRNO आइटम द्वारा उठाए गए SQLSTATE मान हैं।