title: How to catch constraint violation in PL/SQL?
body: <pre><code>CREATE TABLE LOCATION (
    LOCID VARCHAR2(5)
  , MINQTY    NUMBER
  , MAXQTY    NUMBER
  , PRIMARY KEY   (LOCID)
  , CONSTRAINT CHECK_LOCID_LENGTH CHECK (LENGTH(LOCID) = 5)
  , CONSTRAINT CHECK_MINQTY_RANGE CHECK (MINQTY BETWEEN 0 AND 999)
  , CONSTRAINT CHECK_MAXQTY_RANGE CHECK (MAXQTY BETWEEN 0 AND 999)
  , CONSTRAINT CHECK_MAXQTY_GREATER_MIXQTY CHECK (MAXQTY &gt;= MINQTY)
  );
  
  
  CREATE OR REPLACE PROCEDURE ADD_LOCATION_TO_DB(ploccode VARCHAR2, pminqty NUMBER, pmaxqty NUMBER) AS
  BEGIN
  INSERT INTO location(locid, minqty, maxqty) VALUES (ploccode, pminqty, pmaxqty);
  EXCEPTION
  WHEN DUP_VAL_ON_INDEX THEN
  RAISE_APPLICATION_ERROR(-20081, 'Duplicate Location ID');
  WHEN OTHERS THEN
  RAISE_APPLICATION_ERROR(-20086,sqlerrm);
  END;
  </code></pre>
  
  <p>I created the above table with constraints.
  Now I want to test these constraints in PL/SQL procedure by catching them in exceptions. But I'm confused how to do it.</p>