Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

रोकथाम ट्रिगर

आपके पास जन्म तिथि है। इसलिए आपको यह निर्धारित करने की आवश्यकता है कि जन्मतिथि आज से कम से कम सोलह वर्ष पहले की है। ऐसा करने के कई अलग-अलग तरीके हैं; यहाँ एक अंतराल शाब्दिक का उपयोग कर रहा है।

create or replace trigger students_biur
     before insert or update on students for each row 
begin
    if (:new.student_birthdate + INTERVAL '15' YEAR ) < sysdate
    then 
         raise_application_error( -20000, 'This student is too young be registered.');     
    end if;
end; 

यह ट्रिगर अद्यतनों की भी जाँच करता है, ताकि बाद में होने वाले परिवर्तनों को एक छात्र को अमान्य करने से रोका जा सके।

ट्रिगर नाम students_biur केवल एक सम्मेलन है जिसका मैं उपयोग करता हूं:प्रत्यय के साथ तालिका का नाम *B* से पहले *I*nsert *U*pdate प्रत्येक *R*ow के लिए इंगित करता है।

RAISE_APPLICATION_ERROR एक संदेश के साथ उपयोगकर्ता-परिभाषित अपवादों को फेंकने के लिए एक मानक प्रक्रिया है। और अधिक जानकारी प्राप्त करें।

Oracle उपयोगकर्ता-परिभाषित त्रुटियों के लिए -20999 से -20000 की सीमा सुरक्षित रखता है; कोई अन्य संख्या ऑरैकल-परिभाषित अपवाद से टकरा सकती है।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle के to_char में गैर-प्रारूप वर्णों से बचने का सबसे अच्छा तरीका क्या है?

  2. पीएल/एसक्यूएल ऑनलाइन एमसीक्यू क्विज

  3. ORA-01034:ORACLE उपलब्ध नहीं है ORA-27101:साझा स्मृति क्षेत्र मौजूद नहीं है

  4. उत्तर के साथ MySQL प्रश्नों के उदाहरण

  5. NLS_INITCAP () Oracle में फ़ंक्शन