<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://www.sqle.ru/index.php?action=history&amp;feed=atom&amp;title=Oracle_PL%2FSQL_Tutorial%2FPL_SQL_Programming%2FYour_Exception</id>
		<title>Oracle PL/SQL Tutorial/PL SQL Programming/Your Exception - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://www.sqle.ru/index.php?action=history&amp;feed=atom&amp;title=Oracle_PL%2FSQL_Tutorial%2FPL_SQL_Programming%2FYour_Exception"/>
		<link rel="alternate" type="text/html" href="http://www.sqle.ru/index.php?title=Oracle_PL/SQL_Tutorial/PL_SQL_Programming/Your_Exception&amp;action=history"/>
		<updated>2026-05-23T22:12:38Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.sqle.ru/index.php?title=Oracle_PL/SQL_Tutorial/PL_SQL_Programming/Your_Exception&amp;diff=4043&amp;oldid=prev</id>
		<title> в 13:45, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://www.sqle.ru/index.php?title=Oracle_PL/SQL_Tutorial/PL_SQL_Programming/Your_Exception&amp;diff=4043&amp;oldid=prev"/>
				<updated>2010-05-26T13:45:46Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 13:45, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://www.sqle.ru/index.php?title=Oracle_PL/SQL_Tutorial/PL_SQL_Programming/Your_Exception&amp;diff=4044&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://www.sqle.ru/index.php?title=Oracle_PL/SQL_Tutorial/PL_SQL_Programming/Your_Exception&amp;diff=4044&amp;oldid=prev"/>
				<updated>2010-05-26T10:08:28Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== An example of using PRAGMA EXCEPTION_INIT==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; create table org_level(&lt;br /&gt;
  2    company_id number(8)      not null,&lt;br /&gt;
  3    org_level varchar2(1) not null&lt;br /&gt;
  4  );&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; DECLARE&lt;br /&gt;
  2    invalid_org_level EXCEPTION;&lt;br /&gt;
  3    PRAGMA EXCEPTION_INIT(invalid_org_level,-2290);&lt;br /&gt;
  4  BEGIN&lt;br /&gt;
  5    INSERT INTO org_level VALUES (1001,&amp;quot;P&amp;quot;);&lt;br /&gt;
  6    COMMIT;&lt;br /&gt;
  7  EXCEPTION WHEN invalid_org_level THEN&lt;br /&gt;
  8    dbms_output.put_line(&amp;quot;Organization Level&amp;quot;);&lt;br /&gt;
  9  END;&lt;br /&gt;
 10  /&lt;br /&gt;
PL/SQL procedure successfully completed.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; drop table org_level;&lt;br /&gt;
Table dropped.&lt;br /&gt;
SQL&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== An example showing handling of pre-defined exceptions==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; create table product(&lt;br /&gt;
  2     product_id number(4)     not null,&lt;br /&gt;
  3     product_description varchar2(20) not null&lt;br /&gt;
  4  );&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; insert into product values (1,&amp;quot;Java&amp;quot;);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into product values (2,&amp;quot;Oracle&amp;quot;);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into product values (3,&amp;quot;C#&amp;quot;);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into product values (4,&amp;quot;Javascript&amp;quot;);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into product values (5,&amp;quot;Python&amp;quot;);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; DECLARE&lt;br /&gt;
  2    v_descr VARCHAR2(20);&lt;br /&gt;
  3  BEGIN&lt;br /&gt;
  4    SELECT product_description&lt;br /&gt;
  5    INTO v_descr&lt;br /&gt;
  6    FROM product&lt;br /&gt;
  7    WHERE product_id =10;&lt;br /&gt;
  8    dbms_output.put_line(v_descr);&lt;br /&gt;
  9  EXCEPTION WHEN NO_DATA_FOUND THEN&lt;br /&gt;
 10    dbms_output.put_line(&amp;quot;ERR:Invalid Hierarchy Code 10&amp;quot;);&lt;br /&gt;
 11  END;&lt;br /&gt;
 12  /&lt;br /&gt;
ERR:Invalid Hierarchy Code 10&lt;br /&gt;
PL/SQL procedure successfully completed.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; drop table product;&lt;br /&gt;
Table dropped.&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Assign custom exception a number==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; DECLARE&lt;br /&gt;
  2     bad_date EXCEPTION;&lt;br /&gt;
  3     PRAGMA EXCEPTION_INIT (bad_date, -1843);&lt;br /&gt;
  4  BEGIN&lt;br /&gt;
  5     DBMS_OUTPUT.PUT_LINE (TO_DATE (&amp;quot;13/13/99&amp;quot;, &amp;quot;MM/DD/YY&amp;quot;));&lt;br /&gt;
  6  EXCEPTION&lt;br /&gt;
  7    WHEN bad_date&lt;br /&gt;
  8    THEN&lt;br /&gt;
  9      DBMS_OUTPUT.PUT_LINE(&amp;quot;Just twelve months in a year...&amp;quot;);&lt;br /&gt;
 10  END;&lt;br /&gt;
 11  /&lt;br /&gt;
Just twelve months in a year...&lt;br /&gt;
PL/SQL procedure successfully completed.&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Catch &amp;quot;cannot get lock exception&amp;quot;==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE TABLE EMP (EMPNO NUMBER(4) NOT NULL,&lt;br /&gt;
  2                    ENAME VARCHAR2(10),&lt;br /&gt;
  3                    JOB VARCHAR2(9),&lt;br /&gt;
  4                    MGR NUMBER(4),&lt;br /&gt;
  5                    HIREDATE DATE,&lt;br /&gt;
  6                    SAL NUMBER(7, 2),&lt;br /&gt;
  7                    COMM NUMBER(7, 2),&lt;br /&gt;
  8                    DEPTNO NUMBER(2));&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; INSERT INTO EMP VALUES (7369, &amp;quot;SMITH&amp;quot;, &amp;quot;CLERK&amp;quot;,    7902, TO_DATE(&amp;quot;17-DEC-1980&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 800, NULL, 20);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO EMP VALUES (7499, &amp;quot;ALLEN&amp;quot;, &amp;quot;SALESMAN&amp;quot;, 7698, TO_DATE(&amp;quot;20-FEB-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 1600, 300, 30);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO EMP VALUES (7521, &amp;quot;WARD&amp;quot;,  &amp;quot;SALESMAN&amp;quot;, 7698, TO_DATE(&amp;quot;22-FEB-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 1250, 500, 30);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO EMP VALUES (7566, &amp;quot;JONES&amp;quot;, &amp;quot;MANAGER&amp;quot;,  7839, TO_DATE(&amp;quot;2-APR-1981&amp;quot;,  &amp;quot;DD-MON-YYYY&amp;quot;), 2975, NULL, 20);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO EMP VALUES (7654, &amp;quot;MARTIN&amp;quot;, &amp;quot;SALESMAN&amp;quot;, 7698,TO_DATE(&amp;quot;28-SEP-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 1250, 1400, 30);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO EMP VALUES (7698, &amp;quot;BLAKE&amp;quot;, &amp;quot;MANAGER&amp;quot;, 7839,TO_DATE(&amp;quot;1-MAY-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 2850, NULL, 30);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO EMP VALUES (7782, &amp;quot;CLARK&amp;quot;, &amp;quot;MANAGER&amp;quot;, 7839,TO_DATE(&amp;quot;9-JUN-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 2450, NULL, 10);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO EMP VALUES (7788, &amp;quot;SCOTT&amp;quot;, &amp;quot;ANALYST&amp;quot;, 7566,TO_DATE(&amp;quot;09-DEC-1982&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 3000, NULL, 20);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO EMP VALUES (7839, &amp;quot;KING&amp;quot;, &amp;quot;PRESIDENT&amp;quot;, NULL,TO_DATE(&amp;quot;17-NOV-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 5000, NULL, 10);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO EMP VALUES (7844, &amp;quot;TURNER&amp;quot;, &amp;quot;SALESMAN&amp;quot;, 7698,TO_DATE(&amp;quot;8-SEP-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 1500, 0, 30);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO EMP VALUES (7876, &amp;quot;ADAMS&amp;quot;, &amp;quot;CLERK&amp;quot;, 7788,TO_DATE(&amp;quot;12-JAN-1983&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 1100, NULL, 20);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO EMP VALUES (7900, &amp;quot;JAMES&amp;quot;, &amp;quot;CLERK&amp;quot;, 7698,TO_DATE(&amp;quot;3-DEC-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 950, NULL, 30);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO EMP VALUES (7902, &amp;quot;FORD&amp;quot;, &amp;quot;ANALYST&amp;quot;, 7566,TO_DATE(&amp;quot;3-DEC-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 3000, NULL, 20);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO EMP VALUES (7934, &amp;quot;MILLER&amp;quot;, &amp;quot;CLERK&amp;quot;, 7782,TO_DATE(&amp;quot;23-JAN-1982&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 1300, NULL, 10);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; DECLARE&lt;br /&gt;
  2    no_lock EXCEPTION;&lt;br /&gt;
  3    pragma EXCEPTION_INIT(no_lock, -00054);&lt;br /&gt;
  4  BEGIN&lt;br /&gt;
  5    FOR my_rec IN (SELECT * from EMP FOR UPDATE NOWAIT)&lt;br /&gt;
  6    LOOP&lt;br /&gt;
  7      DBMS_OUTPUT.PUT_LINE (&amp;quot;Employee: &amp;quot; || my_rec.ename);&lt;br /&gt;
  8    END LOOP;&lt;br /&gt;
  9  EXCEPTION&lt;br /&gt;
 10    WHEN no_lock THEN&lt;br /&gt;
 11      DBMS_OUTPUT.PUT_LINE (&amp;quot;Could not get lock.  Try again later&amp;quot;);&lt;br /&gt;
 12  END;&lt;br /&gt;
 13  /&lt;br /&gt;
Employee: SMITH&lt;br /&gt;
Employee: ALLEN&lt;br /&gt;
Employee: WARD&lt;br /&gt;
Employee: JONES&lt;br /&gt;
Employee: MARTIN&lt;br /&gt;
Employee: BLAKE&lt;br /&gt;
Employee: CLARK&lt;br /&gt;
Employee: SCOTT&lt;br /&gt;
Employee: KING&lt;br /&gt;
Employee: TURNER&lt;br /&gt;
Employee: ADAMS&lt;br /&gt;
Employee: JAMES&lt;br /&gt;
Employee: FORD&lt;br /&gt;
Employee: MILLER&lt;br /&gt;
PL/SQL procedure successfully completed.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; drop table emp;&lt;br /&gt;
Table dropped.&lt;br /&gt;
SQL&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Create your own no_data_found EXCEPTION==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; DECLARE&lt;br /&gt;
  2     d VARCHAR2(1);&lt;br /&gt;
  3&lt;br /&gt;
  4     no_data_found EXCEPTION;&lt;br /&gt;
  5&lt;br /&gt;
  6  BEGIN&lt;br /&gt;
  7&lt;br /&gt;
  8     SELECT &amp;quot;dummy&amp;quot; INTO d FROM dual WHERE 1=2;&lt;br /&gt;
  9&lt;br /&gt;
 10     IF d IS NULL&lt;br /&gt;
 11&lt;br /&gt;
 12     THEN&lt;br /&gt;
 13&lt;br /&gt;
 14        RAISE no_data_found;&lt;br /&gt;
 15&lt;br /&gt;
 16     END IF;&lt;br /&gt;
 17&lt;br /&gt;
 18  EXCEPTION&lt;br /&gt;
 19&lt;br /&gt;
 20     WHEN no_data_found&lt;br /&gt;
 21&lt;br /&gt;
 22     THEN&lt;br /&gt;
 23&lt;br /&gt;
 24        DBMS_OUTPUT.PUT_LINE (&amp;quot;Trapped the error!?&amp;quot;);&lt;br /&gt;
 25  END;&lt;br /&gt;
 26  /&lt;br /&gt;
DECLARE&lt;br /&gt;
*&lt;br /&gt;
ERROR at line 1:&lt;br /&gt;
ORA-01403: no data found&lt;br /&gt;
ORA-06512: at line 8&lt;br /&gt;
&lt;br /&gt;
SQL&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Handling user-defined exceptions with a WHEN clause==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; create table company(&lt;br /&gt;
  2     product_id        number(4)    not null,&lt;br /&gt;
  3     company_id          NUMBER(8)    not null,&lt;br /&gt;
  4     company_short_name  varchar2(30) not null,&lt;br /&gt;
  5     company_long_name   varchar2(60)&lt;br /&gt;
  6  );&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt; insert into company values(1,1001,&amp;quot;A Inc.&amp;quot;,&amp;quot;Long Name A Inc.&amp;quot;);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into company values(1,1002,&amp;quot;B Inc.&amp;quot;,&amp;quot;Long Name B Inc.&amp;quot;);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into company values(1,1003,&amp;quot;C Inc.&amp;quot;,&amp;quot;Long Name C Inc.&amp;quot;);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into company values(2,1004,&amp;quot;D Inc.&amp;quot;,&amp;quot;Long Name D Inc.&amp;quot;);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into company values(2,1005,&amp;quot;E Inc.&amp;quot;,&amp;quot;Long Name E Inc.&amp;quot;);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into company values(2,1006,&amp;quot;F Inc.&amp;quot;,&amp;quot;Long Name F Inc.&amp;quot;);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; create table org_company_site(&lt;br /&gt;
  2     company_id number(8) not null,&lt;br /&gt;
  3     site_no number(4) not null&lt;br /&gt;
  4  );&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt; insert into org_company_site values (1001,1);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into org_company_site values (1002,2);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into org_company_site values (1003,3);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into org_company_site values (1004,1);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into org_company_site values (1004,2);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into org_company_site values (1004,3);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into org_company_site values (1005,1);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into org_company_site values (1005,4);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into org_company_site values (1005,5);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into org_company_site values (1006,1);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; BEGIN&lt;br /&gt;
  2  insert into company values (3,1007,&amp;quot;O Inc.&amp;quot;,&amp;quot;O Inc.&amp;quot;);&lt;br /&gt;
  3  COMMIT;&lt;br /&gt;
  4  END;&lt;br /&gt;
  5  /&lt;br /&gt;
PL/SQL procedure successfully completed.&lt;br /&gt;
SQL&amp;gt; DECLARE&lt;br /&gt;
  2    sites_undefined_for_org EXCEPTION;&lt;br /&gt;
  3    v_cnt NUMBER;&lt;br /&gt;
  4  BEGIN&lt;br /&gt;
  5    SELECT COUNT(*)&lt;br /&gt;
  6    INTO v_cnt&lt;br /&gt;
  7    FROM org_company_site&lt;br /&gt;
  8    WHERE company_id =1007;&lt;br /&gt;
  9    IF (v_cnt=0)THEN&lt;br /&gt;
 10      --explicitly raising the user-defined exception&lt;br /&gt;
 11      RAISE sites_undefined_for_org;&lt;br /&gt;
 12    END IF;&lt;br /&gt;
 13  EXCEPTION&lt;br /&gt;
 14    --handling the raised user-defined exception&lt;br /&gt;
 15    WHEN sites_undefined_for_org THEN&lt;br /&gt;
 16      dbms_output.put_line(&amp;quot;There are no sites defined for organization 1007&amp;quot;);&lt;br /&gt;
 17    WHEN OTHERS THEN&lt;br /&gt;
 18      dbms_output.put_line(&amp;quot;ERR:An error occurred with info :&amp;quot;||&lt;br /&gt;
 19      TO_CHAR(SQLCODE)||&amp;quot; &amp;quot;||SQLERRM);&lt;br /&gt;
 20  END;&lt;br /&gt;
 21  /&lt;br /&gt;
There are no sites defined for organization 1007&lt;br /&gt;
PL/SQL procedure successfully completed.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; drop table company;&lt;br /&gt;
Table dropped.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; drop table org_company_site;&lt;br /&gt;
Table dropped.&lt;br /&gt;
SQL&amp;gt;&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>