<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://sqle.ru/index.php?action=history&amp;feed=atom&amp;title=Oracle_PL%2FSQL%2FPL_SQL%2FCompile_Error</id>
		<title>Oracle PL/SQL/PL SQL/Compile Error - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://sqle.ru/index.php?action=history&amp;feed=atom&amp;title=Oracle_PL%2FSQL%2FPL_SQL%2FCompile_Error"/>
		<link rel="alternate" type="text/html" href="http://sqle.ru/index.php?title=Oracle_PL/SQL/PL_SQL/Compile_Error&amp;action=history"/>
		<updated>2026-04-05T04:15:08Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://sqle.ru/index.php?title=Oracle_PL/SQL/PL_SQL/Compile_Error&amp;diff=1973&amp;oldid=prev</id>
		<title> в 13:45, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://sqle.ru/index.php?title=Oracle_PL/SQL/PL_SQL/Compile_Error&amp;diff=1973&amp;oldid=prev"/>
				<updated>2010-05-26T13:45:19Z</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://sqle.ru/index.php?title=Oracle_PL/SQL/PL_SQL/Compile_Error&amp;diff=1974&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://sqle.ru/index.php?title=Oracle_PL/SQL/PL_SQL/Compile_Error&amp;diff=1974&amp;oldid=prev"/>
				<updated>2010-05-26T09:59:53Z</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;==Build an anonymous block that will trigger an error.==&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;
    &lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; SET SERVEROUTPUT ON SIZE 1000000&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; &lt;br /&gt;
SQL&amp;gt; DECLARE&lt;br /&gt;
  2&lt;br /&gt;
  3    &lt;br /&gt;
  4    my_string         VARCHAR2(1) := &amp;quot; &amp;quot;;&lt;br /&gt;
  5    my_number         NUMBER;&lt;br /&gt;
  6&lt;br /&gt;
  7  BEGIN&lt;br /&gt;
  8&lt;br /&gt;
  9    &lt;br /&gt;
 10    my_number := TO_NUMBER(my_string);&lt;br /&gt;
 11&lt;br /&gt;
 12  END;&lt;br /&gt;
 13  /&lt;br /&gt;
DECLARE&lt;br /&gt;
*&lt;br /&gt;
ERROR at line 1:&lt;br /&gt;
ORA-06502: PL/SQL: numeric or value error: character to number conversion error&lt;br /&gt;
ORA-06512: at line 10&lt;br /&gt;
&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Check error form stored procedure==&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;
    &lt;br /&gt;
SQL&amp;gt; CREATE TABLE products(&lt;br /&gt;
  2    name            VARCHAR2(50),&lt;br /&gt;
  3    pack_size       VARCHAR2(30),&lt;br /&gt;
  4    status          VARCHAR2(20),&lt;br /&gt;
  5    price      NUMBER(8,2),&lt;br /&gt;
  6    min_price       NUMBER(8,2)&lt;br /&gt;
  7  );&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; create or replace procedure print_products&lt;br /&gt;
  2  as&lt;br /&gt;
  3  declare&lt;br /&gt;
  4      cursor get_data is select name, price from products;&lt;br /&gt;
  5  begin&lt;br /&gt;
  6       for i in get_data&lt;br /&gt;
  7       LOOP&lt;br /&gt;
  8          if i.price &amp;gt; 50 then&lt;br /&gt;
  9               dbms_output.put_line(i.name || &amp;quot; Price: &amp;quot; || i.price);&lt;br /&gt;
 10          else&lt;br /&gt;
 11               dbms_output.put_line(i.name || &amp;quot; Product under 50&amp;quot;);&lt;br /&gt;
 12          end if;&lt;br /&gt;
 13       END LOOP;&lt;br /&gt;
 14  end;&lt;br /&gt;
 15  /&lt;br /&gt;
Warning: Procedure created with compilation errors.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; show errors&lt;br /&gt;
Errors for PROCEDURE PRINT_PRODUCTS:&lt;br /&gt;
&lt;br /&gt;
LINE/COL&lt;br /&gt;
--------&lt;br /&gt;
ERROR&lt;br /&gt;
------------------------------------------------------&lt;br /&gt;
3/1&lt;br /&gt;
PLS-00103: Encountered the symbol &amp;quot;DECLARE&amp;quot; when&lt;br /&gt;
expecting one of the following:&lt;br /&gt;
begin function package pragma procedure subtype type&lt;br /&gt;
use&lt;br /&gt;
&amp;lt;an identifier&amp;gt; &amp;lt;a double-quoted delimited-identifier&amp;gt;&lt;br /&gt;
form&lt;br /&gt;
current cursor external language&lt;br /&gt;
The symbol &amp;quot;begin&amp;quot; was substituted for &amp;quot;DECLARE&amp;quot; to&lt;br /&gt;
continue.&lt;br /&gt;
14/4&lt;br /&gt;
PLS-00103: Encountered the symbol &amp;quot;end-of-file&amp;quot; when&lt;br /&gt;
expecting one of the following:&lt;br /&gt;
begin case declare end exception exit for goto if loop&lt;br /&gt;
mod&lt;br /&gt;
null pragma raise return select update while with&lt;br /&gt;
&amp;lt;an identifier&amp;gt; &amp;lt;a double-quoted delimited-identifier&amp;gt;&lt;br /&gt;
&amp;lt;a bind variable&amp;gt; &amp;lt;&amp;lt; close current delete fetch lock&lt;br /&gt;
insert&lt;br /&gt;
open rollback savepoint set sql execute commit forall&lt;br /&gt;
merge&lt;br /&gt;
&lt;br /&gt;
                          Page:   2&lt;br /&gt;
LINE/COL&lt;br /&gt;
--------&lt;br /&gt;
ERROR&lt;br /&gt;
------------------------------------------------------&lt;br /&gt;
pipe&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; drop table products;&lt;br /&gt;
Table dropped.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Check error for procedure==&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;
    &lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; create or replace procedure A(p number) is&lt;br /&gt;
  2    begin&lt;br /&gt;
  3        B(p+1);&lt;br /&gt;
  4    end;&lt;br /&gt;
  5   /&lt;br /&gt;
Warning: Procedure created with compilation errors.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; show errors&lt;br /&gt;
Errors for PROCEDURE A:&lt;br /&gt;
LINE/COL ERROR&lt;br /&gt;
-------- -----------------------------------------------------------------&lt;br /&gt;
3/7      PL/SQL: Statement ignored&lt;br /&gt;
3/7      PLS-00905: object sqle.B is invalid&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; create or replace procedure B(p number) is&lt;br /&gt;
  2    begin&lt;br /&gt;
  3        A(p+1);&lt;br /&gt;
  4    end;&lt;br /&gt;
  5   /&lt;br /&gt;
Warning: Procedure created with compilation errors.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; show errors&lt;br /&gt;
Errors for PROCEDURE B:&lt;br /&gt;
LINE/COL ERROR&lt;br /&gt;
-------- -----------------------------------------------------------------&lt;br /&gt;
3/7      PL/SQL: Statement ignored&lt;br /&gt;
3/7      PLS-00905: object sqle.A is invalid&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Check the error==&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;
  &lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; -- function with no return type&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;  create or replace&lt;br /&gt;
  2    function no_return_type as&lt;br /&gt;
  3    begin&lt;br /&gt;
  4      return null;&lt;br /&gt;
  5    end no_return_type;&lt;br /&gt;
  6    /&lt;br /&gt;
Warning: Function created with compilation errors.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;  show errors&lt;br /&gt;
Errors for FUNCTION NO_RETURN_TYPE:&lt;br /&gt;
LINE/COL ERROR&lt;br /&gt;
-------- -----------------------------------------------------------------&lt;br /&gt;
1/25     PLS-00103: Encountered the symbol &amp;quot;AS&amp;quot; when expecting one of the&lt;br /&gt;
         following:&lt;br /&gt;
         ( return compress compiled wrapped&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
         &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==how DDL doesn&amp;quot;t work with PL/SQL==&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;
    &lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; BEGIN&lt;br /&gt;
  2     CREATE TABLE ddl_table (id NUMBER(10));&lt;br /&gt;
  3  EXCEPTION&lt;br /&gt;
  4     WHEN OTHERS&lt;br /&gt;
  5     THEN&lt;br /&gt;
  6        DBMS_OUTPUT.PUT_LINE(sqlerrm);&lt;br /&gt;
  7  END;&lt;br /&gt;
  8  /&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==PLS-00306: wrong number or types of arguments in call==&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;
    &lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; create or replace TYPE number_table IS TABLE OF INTEGER;&lt;br /&gt;
  2  /&lt;br /&gt;
Type created.&lt;br /&gt;
SQL&amp;gt; create or replace PROCEDURE print_list(list_in NUMBER_TABLE) IS&lt;br /&gt;
  2   BEGIN&lt;br /&gt;
  3       FOR i IN list_in.FIRST..list_in.LAST LOOP&lt;br /&gt;
  4         IF list_in.EXISTS(i) THEN&lt;br /&gt;
  5           DBMS_OUTPUT.PUT_LINE(&amp;quot;List [&amp;quot;||list_in(i)||&amp;quot;]&amp;quot;);&lt;br /&gt;
  6         END IF;&lt;br /&gt;
  7       END LOOP;&lt;br /&gt;
  8   END print_list;&lt;br /&gt;
  9   /&lt;br /&gt;
Procedure 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     number_list NUMBER_VARRAY := number_varray(1,2,3,4,5);&lt;br /&gt;
  3&lt;br /&gt;
  4   BEGIN&lt;br /&gt;
  5     print_list(number_list);&lt;br /&gt;
  6&lt;br /&gt;
  7&lt;br /&gt;
  8     number_list.TRIM(3);&lt;br /&gt;
  9&lt;br /&gt;
 10     print_list(number_list);&lt;br /&gt;
 11   END;&lt;br /&gt;
 12   /&lt;br /&gt;
   print_list(number_list);&lt;br /&gt;
   *&lt;br /&gt;
ERROR at line 5:&lt;br /&gt;
ORA-06550: line 5, column 4:&lt;br /&gt;
PLS-00306: wrong number or types of arguments in call to &amp;quot;PRINT_LIST&amp;quot;&lt;br /&gt;
ORA-06550: line 5, column 4:&lt;br /&gt;
PL/SQL: Statement ignored&lt;br /&gt;
ORA-06550: line 10, column 4:&lt;br /&gt;
PLS-00306: wrong number or types of arguments in call to &amp;quot;PRINT_LIST&amp;quot;&lt;br /&gt;
ORA-06550: line 10, column 4:&lt;br /&gt;
PL/SQL: Statement ignored&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==PLS-00363: expression &amp;quot;3&amp;quot; cannot be used as an assignment target==&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;
    &lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; &lt;br /&gt;
SQL&amp;gt; CREATE OR REPLACE PROCEDURE ModeInOut (p_InOut IN OUT NUMBER) IS&lt;br /&gt;
  2&lt;br /&gt;
  3     v_LocalVariable  NUMBER := 0;&lt;br /&gt;
  4   BEGIN&lt;br /&gt;
  5     IF (p_InOut IS NULL) THEN&lt;br /&gt;
  6       DBMS_OUTPUT.PUT_LINE(&amp;quot;p_InOut is NULL&amp;quot;);&lt;br /&gt;
  7     ELSE&lt;br /&gt;
  8       DBMS_OUTPUT.PUT_LINE(&amp;quot;p_InOut = &amp;quot; || p_InOut);&lt;br /&gt;
  9     END IF;&lt;br /&gt;
 10&lt;br /&gt;
 11     v_LocalVariable := p_InOut;&lt;br /&gt;
 12&lt;br /&gt;
 13     p_InOut := 8;&lt;br /&gt;
 14&lt;br /&gt;
 15     DBMS_OUTPUT.PUT(&amp;quot;At end of ModeInOut: &amp;quot;);&lt;br /&gt;
 16     IF (p_InOut IS NULL) THEN&lt;br /&gt;
 17       DBMS_OUTPUT.PUT_LINE(&amp;quot;p_InOut is NULL&amp;quot;);&lt;br /&gt;
 18     ELSE&lt;br /&gt;
 19       DBMS_OUTPUT.PUT_LINE(&amp;quot;p_InOut = &amp;quot; || p_InOut);&lt;br /&gt;
 20     END IF;&lt;br /&gt;
 21   END ModeInOut;&lt;br /&gt;
 22    /&lt;br /&gt;
Procedure 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; show errors&lt;br /&gt;
No errors.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; DECLARE&lt;br /&gt;
  2     v_InOut NUMBER := 1;&lt;br /&gt;
  3   BEGIN&lt;br /&gt;
  4     -- Call ModeInOut with a variable, which should be modified.&lt;br /&gt;
  5     DBMS_OUTPUT.PUT_LINE(&amp;quot;Before calling ModeInOut, v_InOut = &amp;quot; ||v_InOut);&lt;br /&gt;
  6     ModeInOut(v_InOut);&lt;br /&gt;
  7     DBMS_OUTPUT.PUT_LINE(&amp;quot;After calling ModeInOut, v_InOut = &amp;quot; || v_InOut);&lt;br /&gt;
  8   END;&lt;br /&gt;
  9   /&lt;br /&gt;
Before calling ModeInOut, v_InOut = 1&lt;br /&gt;
p_InOut = 1&lt;br /&gt;
At end of ModeInOut: p_InOut = 8&lt;br /&gt;
After calling ModeInOut, v_InOut = 8&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;&lt;br /&gt;
SQL&amp;gt; BEGIN&lt;br /&gt;
  2     ModeOut(3);&lt;br /&gt;
  3   END;&lt;br /&gt;
  4   /&lt;br /&gt;
   ModeOut(3);&lt;br /&gt;
           *&lt;br /&gt;
ERROR at line 2:&lt;br /&gt;
ORA-06550: line 2, column 12:&lt;br /&gt;
PLS-00363: expression &amp;quot;3&amp;quot; cannot be used as an assignment target&lt;br /&gt;
ORA-06550: line 2, column 4:&lt;br /&gt;
PL/SQL: Statement ignored&lt;br /&gt;
&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; BEGIN&lt;br /&gt;
  2     ModeIn(3);&lt;br /&gt;
  3   END;&lt;br /&gt;
  4   /&lt;br /&gt;
Inside ModeIn: p_In = 3&lt;br /&gt;
p_In = 3&lt;br /&gt;
PL/SQL procedure successfully completed.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Set the PLSQL_WARNING level to DISABLE:ALL==&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;
    &lt;br /&gt;
SQL&amp;gt; CREATE TABLE books (&lt;br /&gt;
  2    isbn      CHAR(10) PRIMARY KEY,&lt;br /&gt;
  3    category  VARCHAR2(20),&lt;br /&gt;
  4    title     VARCHAR2(100),&lt;br /&gt;
  5    num_pages NUMBER,&lt;br /&gt;
  6    price     NUMBER,&lt;br /&gt;
  7    copyright NUMBER(4),&lt;br /&gt;
  8    emp1   NUMBER,&lt;br /&gt;
  9    emp2   NUMBER,&lt;br /&gt;
 10    emp3   NUMBER&lt;br /&gt;
 11  );&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; INSERT INTO books (isbn, category, title, num_pages, price, copyright, emp1, emp2, emp3)&lt;br /&gt;
  2             VALUES (&amp;quot;1&amp;quot;, &amp;quot;Database&amp;quot;, &amp;quot;Oracle&amp;quot;, 563, 39.99, 2009, 1, 2, 3);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO books (isbn, category, title, num_pages, price, copyright, emp1, emp2)&lt;br /&gt;
  2             VALUES (&amp;quot;2&amp;quot;, &amp;quot;Database&amp;quot;, &amp;quot;MySQL&amp;quot;, 765, 44.99, 2009, 4, 5);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO books (isbn, category, title, num_pages, price, copyright, emp1, emp2, emp3)&lt;br /&gt;
  2             VALUES (&amp;quot;3&amp;quot;, &amp;quot;Database&amp;quot;, &amp;quot;SQL Server&amp;quot;, 404, 39.99, 2001, 6, 7, 8);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO books (isbn, category, title, num_pages, price, copyright, emp1, emp2, emp3)&lt;br /&gt;
  2             VALUES (&amp;quot;4&amp;quot;, &amp;quot;Database&amp;quot;, &amp;quot;SQL&amp;quot;, 535, 39.99, 2002, 4, 5, 9);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO books (isbn, category, title, num_pages, price, copyright, emp1, emp2)&lt;br /&gt;
  2             VALUES (&amp;quot;5&amp;quot;, &amp;quot;Database&amp;quot;, &amp;quot;Java&amp;quot;, 487, 39.99, 2002, 10, 11);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO books (isbn, category, title, num_pages, price, copyright, emp1, emp2)&lt;br /&gt;
  2             VALUES (&amp;quot;6&amp;quot;, &amp;quot;Database&amp;quot;, &amp;quot;JDBC&amp;quot;, 592, 39.99, 2002, 12, 13);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO books (isbn, category, title, num_pages, price, copyright, emp1, emp2, emp3)&lt;br /&gt;
  2             VALUES (&amp;quot;7&amp;quot;, &amp;quot;Database&amp;quot;, &amp;quot;XML&amp;quot;, 500, 39.99, 2002, 1, 2, 3);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CALL DBMS_WARNING.SET_WARNING_SETTING_STRING(&amp;quot;DISABLE:ALL&amp;quot;, &amp;quot;SESSION&amp;quot;);&lt;br /&gt;
Call completed.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE OR REPLACE PROCEDURE compile_warning&lt;br /&gt;
  2  AS&lt;br /&gt;
  3     v_title VARCHAR2(100);&lt;br /&gt;
  4     CURSOR dbms_warning_cur IS SELECT title FROM books;&lt;br /&gt;
  5  BEGIN&lt;br /&gt;
  6     OPEN dbms_warning_cur;&lt;br /&gt;
  7     LOOP&lt;br /&gt;
  8     FETCH dbms_warning_cur INTO v_title;&lt;br /&gt;
  9         DBMS_OUTPUT.PUT_LINE(&amp;quot;Titles Available: &amp;quot;||v_title);&lt;br /&gt;
 10     END LOOP;&lt;br /&gt;
 11     CLOSE dbms_warning_cur;&lt;br /&gt;
 12  END;&lt;br /&gt;
 13  /&lt;br /&gt;
Procedure created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; drop table books;&lt;br /&gt;
Table dropped.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==This example illustrates the PLS-483 error==&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;
    &lt;br /&gt;
SQL&amp;gt; CREATE TABLE log_table(&lt;br /&gt;
  2    code     VARCHAR2(100),&lt;br /&gt;
  3    message     VARCHAR2(100),&lt;br /&gt;
  4    info     VARCHAR2(100));&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; DECLARE&lt;br /&gt;
  2    myException1 EXCEPTION;&lt;br /&gt;
  3    myException2 EXCEPTION;&lt;br /&gt;
  4  BEGIN&lt;br /&gt;
  5    RAISE myException1;&lt;br /&gt;
  6  EXCEPTION&lt;br /&gt;
  7    WHEN myException2 THEN&lt;br /&gt;
  8      INSERT INTO log_table (info)VALUES (&amp;quot;Handler 1 executed!&amp;quot;);&lt;br /&gt;
  9    WHEN myException1 THEN&lt;br /&gt;
 10      INSERT INTO log_table (info)VALUES (&amp;quot;Handler 3 executed!&amp;quot;);&lt;br /&gt;
 11    WHEN myException1 OR myException2 THEN&lt;br /&gt;
 12      INSERT INTO log_table (info)VALUES (&amp;quot;Handler 4 executed!&amp;quot;);&lt;br /&gt;
 13  END;&lt;br /&gt;
 14  /&lt;br /&gt;
  WHEN myException1 OR myException2 THEN&lt;br /&gt;
  *&lt;br /&gt;
ERROR at line 11:&lt;br /&gt;
ORA-04045: errors during recompilation/revalidation of sqle.LOG_ERRORS&lt;br /&gt;
ORA-01031: insufficient privileges&lt;br /&gt;
ORA-06550: line 11, column 3:&lt;br /&gt;
PLS-00483: exception &amp;quot;MYEXCEPTION2&amp;quot; may appear in at most one exception handler&lt;br /&gt;
in this block&lt;br /&gt;
ORA-06550: line 0, column 0:&lt;br /&gt;
PL/SQL: Compilation unit analysis terminated&lt;br /&gt;
&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; drop table log_table;&lt;br /&gt;
Table dropped.&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==This package will not compile because the specification and body do not match.==&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;
    &lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE OR REPLACE PACKAGE PackageA AS&lt;br /&gt;
  2     FUNCTION FunctionA(p1 IN NUMBER,p2 IN DATE)&lt;br /&gt;
  3       RETURN VARCHAR2;&lt;br /&gt;
  4   END PackageA;&lt;br /&gt;
  5   /&lt;br /&gt;
Package 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; CREATE OR REPLACE PACKAGE BODY PackageA AS&lt;br /&gt;
  2     FUNCTION FunctionA(p1 IN CHAR)&lt;br /&gt;
  3       RETURN VARCHAR2;&lt;br /&gt;
  4   END PackageA;&lt;br /&gt;
  5   /&lt;br /&gt;
Warning: Package Body created with compilation errors.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; show errors&lt;br /&gt;
Errors for PACKAGE BODY PACKAGEA:&lt;br /&gt;
LINE/COL ERROR&lt;br /&gt;
-------- -----------------------------------------------------------------&lt;br /&gt;
2/13     PLS-00323: subprogram or cursor &amp;quot;FUNCTIONA&amp;quot; is declared in a&lt;br /&gt;
         package specification and must be defined in the package body&lt;br /&gt;
2/13     PLS-00328: A subprogram body must be defined for the forward&lt;br /&gt;
         declaration of FUNCTIONA.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>