<?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%2FStored_Procedure_Function%2FParameter_IN</id>
		<title>Oracle PL/SQL/Stored Procedure Function/Parameter IN - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://sqle.ru/index.php?action=history&amp;feed=atom&amp;title=Oracle_PL%2FSQL%2FStored_Procedure_Function%2FParameter_IN"/>
		<link rel="alternate" type="text/html" href="http://sqle.ru/index.php?title=Oracle_PL/SQL/Stored_Procedure_Function/Parameter_IN&amp;action=history"/>
		<updated>2026-05-26T01:16:06Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://sqle.ru/index.php?title=Oracle_PL/SQL/Stored_Procedure_Function/Parameter_IN&amp;diff=2098&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/Stored_Procedure_Function/Parameter_IN&amp;diff=2098&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/Stored_Procedure_Function/Parameter_IN&amp;diff=2099&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://sqle.ru/index.php?title=Oracle_PL/SQL/Stored_Procedure_Function/Parameter_IN&amp;diff=2099&amp;oldid=prev"/>
				<updated>2010-05-26T10:00:56Z</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;==Column type parameter==&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 TABLE lecturer (&lt;br /&gt;
  2    id               NUMBER(5) PRIMARY KEY,&lt;br /&gt;
  3    first_name       VARCHAR2(20),&lt;br /&gt;
  4    last_name        VARCHAR2(20),&lt;br /&gt;
  5    major            VARCHAR2(30),&lt;br /&gt;
  6    current_credits  NUMBER(3)&lt;br /&gt;
  7    );&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; INSERT INTO lecturer (id, first_name, last_name, major,current_credits)&lt;br /&gt;
  2                VALUES (10001, &amp;quot;Scott&amp;quot;, &amp;quot;Lawson&amp;quot;,&amp;quot;Computer Science&amp;quot;, 11);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; INSERT INTO lecturer (id, first_name, last_name, major, current_credits)&lt;br /&gt;
  2                VALUES (10002, &amp;quot;Mar&amp;quot;, &amp;quot;Wells&amp;quot;,&amp;quot;History&amp;quot;, 4);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; INSERT INTO lecturer (id, first_name, last_name, major,current_credits)&lt;br /&gt;
  2                VALUES (10003, &amp;quot;Jone&amp;quot;, &amp;quot;Bliss&amp;quot;,&amp;quot;Computer Science&amp;quot;, 8);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; INSERT INTO lecturer (id, first_name, last_name, major,current_credits)&lt;br /&gt;
  2                VALUES (10004, &amp;quot;Man&amp;quot;, &amp;quot;Kyte&amp;quot;,&amp;quot;Economics&amp;quot;, 8);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; INSERT INTO lecturer (id, first_name, last_name, major,current_credits)&lt;br /&gt;
  2                VALUES (10005, &amp;quot;Pat&amp;quot;, &amp;quot;Poll&amp;quot;,&amp;quot;History&amp;quot;, 4);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; INSERT INTO lecturer (id, first_name, last_name, major,current_credits)&lt;br /&gt;
  2                VALUES (10006, &amp;quot;Tim&amp;quot;, &amp;quot;Viper&amp;quot;,&amp;quot;History&amp;quot;, 4);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; INSERT INTO lecturer (id, first_name, last_name, major,current_credits)&lt;br /&gt;
  2                VALUES (10007, &amp;quot;Barbara&amp;quot;, &amp;quot;Blues&amp;quot;,&amp;quot;Economics&amp;quot;, 7);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; INSERT INTO lecturer (id, first_name, last_name, major,current_credits)&lt;br /&gt;
  2                VALUES (10008, &amp;quot;David&amp;quot;, &amp;quot;Large&amp;quot;,&amp;quot;Music&amp;quot;, 4);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; INSERT INTO lecturer (id, first_name, last_name, major,current_credits)&lt;br /&gt;
  2                VALUES (10009, &amp;quot;Chris&amp;quot;, &amp;quot;Elegant&amp;quot;,&amp;quot;Nutrition&amp;quot;, 8);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; INSERT INTO lecturer (id, first_name, last_name, major,current_credits)&lt;br /&gt;
  2                VALUES (10010, &amp;quot;Rose&amp;quot;, &amp;quot;Bond&amp;quot;,&amp;quot;Music&amp;quot;, 7);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; INSERT INTO lecturer (id, first_name, last_name, major,current_credits)&lt;br /&gt;
  2                VALUES (10011, &amp;quot;Rita&amp;quot;, &amp;quot;Johnson&amp;quot;,&amp;quot;Nutrition&amp;quot;, 8);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; INSERT INTO lecturer (id, first_name, last_name, major,current_credits)&lt;br /&gt;
  2                VALUES (10012, &amp;quot;Sharon&amp;quot;, &amp;quot;Clear&amp;quot;,&amp;quot;Computer Science&amp;quot;, 3);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE OR REPLACE PROCEDURE AddNewStudent (&lt;br /&gt;
  2    p_FirstName  lecturer.first_name%TYPE,&lt;br /&gt;
  3    p_LastName   lecturer.last_name%TYPE,&lt;br /&gt;
  4    p_Major      lecturer.major%TYPE) AS&lt;br /&gt;
  5  BEGIN&lt;br /&gt;
  6    INSERT INTO lecturer (ID, first_name, last_name,&lt;br /&gt;
  7                          major, current_credits)&lt;br /&gt;
  8      VALUES (10018, p_FirstName, p_LastName,&lt;br /&gt;
  9              p_Major, 0);&lt;br /&gt;
 10  END AddNewStudent;&lt;br /&gt;
 11  /&lt;br /&gt;
Procedure 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_NewFirstName  lecturer.first_name%TYPE := &amp;quot;Cynthia&amp;quot;;&lt;br /&gt;
  3    v_NewLastName   lecturer.last_name%TYPE := &amp;quot;Camino&amp;quot;;&lt;br /&gt;
  4    v_NewMajor      lecturer.major%TYPE := &amp;quot;History&amp;quot;;&lt;br /&gt;
  5  BEGIN&lt;br /&gt;
  6    AddNewStudent(v_NewFirstName, v_NewLastName, v_NewMajor);&lt;br /&gt;
  7  END;&lt;br /&gt;
  8  /&lt;br /&gt;
PL/SQL procedure successfully completed.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; select * from lecturer;&lt;br /&gt;
        ID FIRST_NAME           LAST_NAME&lt;br /&gt;
---------- -------------------- --------------------&lt;br /&gt;
MAJOR                          CURRENT_CREDITS&lt;br /&gt;
------------------------------ ---------------&lt;br /&gt;
     10001 Scott                Lawson&lt;br /&gt;
Computer Science                            11&lt;br /&gt;
     10002 Mar                  Wells&lt;br /&gt;
History                                      4&lt;br /&gt;
     10003 Jone                 Bliss&lt;br /&gt;
Computer Science                             8&lt;br /&gt;
&lt;br /&gt;
        ID FIRST_NAME           LAST_NAME&lt;br /&gt;
---------- -------------------- --------------------&lt;br /&gt;
MAJOR                          CURRENT_CREDITS&lt;br /&gt;
------------------------------ ---------------&lt;br /&gt;
     10004 Man                  Kyte&lt;br /&gt;
Economics                                    8&lt;br /&gt;
     10005 Pat                  Poll&lt;br /&gt;
History                                      4&lt;br /&gt;
     10006 Tim                  Viper&lt;br /&gt;
History                                      4&lt;br /&gt;
&lt;br /&gt;
        ID FIRST_NAME           LAST_NAME&lt;br /&gt;
---------- -------------------- --------------------&lt;br /&gt;
MAJOR                          CURRENT_CREDITS&lt;br /&gt;
------------------------------ ---------------&lt;br /&gt;
     10007 Barbara              Blues&lt;br /&gt;
Economics                                    7&lt;br /&gt;
     10008 David                Large&lt;br /&gt;
Music                                        4&lt;br /&gt;
     10009 Chris                Elegant&lt;br /&gt;
Nutrition                                    8&lt;br /&gt;
&lt;br /&gt;
        ID FIRST_NAME           LAST_NAME&lt;br /&gt;
---------- -------------------- --------------------&lt;br /&gt;
MAJOR                          CURRENT_CREDITS&lt;br /&gt;
------------------------------ ---------------&lt;br /&gt;
     10010 Rose                 Bond&lt;br /&gt;
Music                                        7&lt;br /&gt;
     10011 Rita                 Johnson&lt;br /&gt;
Nutrition                                    8&lt;br /&gt;
     10012 Sharon               Clear&lt;br /&gt;
Computer Science                             3&lt;br /&gt;
&lt;br /&gt;
        ID FIRST_NAME           LAST_NAME&lt;br /&gt;
---------- -------------------- --------------------&lt;br /&gt;
MAJOR                          CURRENT_CREDITS&lt;br /&gt;
------------------------------ ---------------&lt;br /&gt;
     10018 Cynthia              Camino&lt;br /&gt;
History                                      0&lt;br /&gt;
&lt;br /&gt;
13 rows selected.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; drop table lecturer;&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;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Define in parameter==&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;
&lt;br /&gt;
SQL&amp;gt; -- define in parameter&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; set serverout on;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; create or replace&lt;br /&gt;
  2  procedure out_parms( p_parm in number ) as&lt;br /&gt;
  3  begin&lt;br /&gt;
  4   null;&lt;br /&gt;
  5   dbms_output.put_line(p_parm);&lt;br /&gt;
  6  end out_parms;&lt;br /&gt;
  7  /&lt;br /&gt;
Procedure created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; exec out_parms( 123 );&lt;br /&gt;
123&lt;br /&gt;
PL/SQL procedure successfully completed.&lt;br /&gt;
SQL&amp;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;
==Demonstrate the behavior of IN, OUT, and IN OUT parameter modes.==&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 format wrapped&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE OR REPLACE PROCEDURE ModeIn (p_In IN NUMBER) AS&lt;br /&gt;
  2     v_LocalVariable NUMBER := 0;&lt;br /&gt;
  3   BEGIN&lt;br /&gt;
  4     DBMS_OUTPUT.PUT(&amp;quot;Inside ModeIn: &amp;quot;);&lt;br /&gt;
  5     IF (p_In IS NULL) THEN&lt;br /&gt;
  6       DBMS_OUTPUT.PUT_LINE(&amp;quot;p_In is NULL&amp;quot;);&lt;br /&gt;
  7     ELSE&lt;br /&gt;
  8       DBMS_OUTPUT.PUT_LINE(&amp;quot;p_In = &amp;quot; || p_In);&lt;br /&gt;
  9     END IF;&lt;br /&gt;
 10&lt;br /&gt;
 11     v_LocalVariable := p_In;&lt;br /&gt;
 12&lt;br /&gt;
 13     IF (p_In IS NULL) THEN&lt;br /&gt;
 14        DBMS_OUTPUT.PUT_LINE(&amp;quot;p_In is NULL&amp;quot;);&lt;br /&gt;
 15     ELSE&lt;br /&gt;
 16       DBMS_OUTPUT.PUT_LINE(&amp;quot;p_In = &amp;quot; || p_In);&lt;br /&gt;
 17     END IF;&lt;br /&gt;
 18   END ModeIn;&lt;br /&gt;
 19   /&lt;br /&gt;
Procedure created.&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;&lt;br /&gt;
SQL&amp;gt; DECLARE&lt;br /&gt;
  2     v_In NUMBER := 1;&lt;br /&gt;
  3   BEGIN&lt;br /&gt;
  4     DBMS_OUTPUT.PUT_LINE(&amp;quot;Before calling ModeIn, v_In = &amp;quot; || v_In);&lt;br /&gt;
  5     ModeIn(v_In);&lt;br /&gt;
  6     DBMS_OUTPUT.PUT_LINE(&amp;quot;After calling ModeIn, v_In = &amp;quot; || v_In);&lt;br /&gt;
  7   END;&lt;br /&gt;
  8   /&lt;br /&gt;
Before calling ModeIn, v_In = 1&lt;br /&gt;
Inside ModeIn: p_In = 1&lt;br /&gt;
p_In = 1&lt;br /&gt;
After calling ModeIn, v_In = 1&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;&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 procedure will not compile, since it attempts to modify an IN parameter.==&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 OR REPLACE PROCEDURE IllegalModeIn (p_In IN NUMBER) AS&lt;br /&gt;
  2   BEGIN&lt;br /&gt;
  3     p_In := 7;&lt;br /&gt;
  4   END IllegalModeIn;&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 ILLEGALMODEIN:&lt;br /&gt;
LINE/COL ERROR&lt;br /&gt;
-------- -----------------------------------------------------------------&lt;br /&gt;
3/4      PL/SQL: Statement ignored&lt;br /&gt;
3/4      PLS-00363: expression &amp;quot;P_IN&amp;quot; cannot be used as an assignment&lt;br /&gt;
         target&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;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;
==Use &amp;quot;IN&amp;quot; parameters==&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; --   1.  IN - The parameter can be referenced by the procedure or function. The value of the parameter can not be overwritten by the procedure or function.&lt;br /&gt;
SQL&amp;gt; -- 2. OUT - The parameter can not be referenced by the procedure or function, but the value of the parameter can be overwritten by the procedure or function.&lt;br /&gt;
SQL&amp;gt; --   3. IN OUT - The parameter can be referenced by the procedure or function and the value of the parameter can be overwritten by the procedure or function.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; -- create demo table&lt;br /&gt;
SQL&amp;gt; create table Employee(&lt;br /&gt;
  2    ID                 VARCHAR2(4 BYTE),&lt;br /&gt;
  3    First_Name         VARCHAR2(20 BYTE),&lt;br /&gt;
  4    Last_Name          VARCHAR2(20 BYTE),&lt;br /&gt;
  5    Start_Date         DATE,&lt;br /&gt;
  6    End_Date           DATE,&lt;br /&gt;
  7    Salary             Number(8,2),&lt;br /&gt;
  8    City               VARCHAR2(20 BYTE),&lt;br /&gt;
  9    Description        VARCHAR2(80 BYTE)&lt;br /&gt;
 10  )&lt;br /&gt;
 11  /&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; -- prepare data&lt;br /&gt;
SQL&amp;gt; insert into Employee(ID,  First_Name, Last_Name, Start_Date,                     End_Date,                       Salary,  City,       Description)&lt;br /&gt;
  2               values (&amp;quot;01&amp;quot;,&amp;quot;Jason&amp;quot;,    &amp;quot;Martin&amp;quot;,  to_date(&amp;quot;19960725&amp;quot;,&amp;quot;YYYYMMDD&amp;quot;), to_date(&amp;quot;20060725&amp;quot;,&amp;quot;YYYYMMDD&amp;quot;), 1234.56, &amp;quot;Toronto&amp;quot;,  &amp;quot;Programmer&amp;quot;)&lt;br /&gt;
  3  /&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into Employee(ID,  First_Name, Last_Name, Start_Date,                     End_Date,                       Salary,  City,       Description)&lt;br /&gt;
  2                values(&amp;quot;02&amp;quot;,&amp;quot;Alison&amp;quot;,   &amp;quot;Mathews&amp;quot;, to_date(&amp;quot;19760321&amp;quot;,&amp;quot;YYYYMMDD&amp;quot;), to_date(&amp;quot;19860221&amp;quot;,&amp;quot;YYYYMMDD&amp;quot;), 2334.78, &amp;quot;Vancouver&amp;quot;,&amp;quot;Tester&amp;quot;)&lt;br /&gt;
  3  /&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into Employee(ID,  First_Name, Last_Name, Start_Date,                     End_Date,                       Salary,  City,       Description)&lt;br /&gt;
  2                values(&amp;quot;03&amp;quot;,&amp;quot;James&amp;quot;,    &amp;quot;Smith&amp;quot;,   to_date(&amp;quot;19781212&amp;quot;,&amp;quot;YYYYMMDD&amp;quot;), to_date(&amp;quot;19900315&amp;quot;,&amp;quot;YYYYMMDD&amp;quot;), 2334.78, &amp;quot;Vancouver&amp;quot;,&amp;quot;Tester&amp;quot;)&lt;br /&gt;
  3  /&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into Employee(ID,  First_Name, Last_Name, Start_Date,                     End_Date,                       Salary,  City,       Description)&lt;br /&gt;
  2                values(&amp;quot;04&amp;quot;,&amp;quot;Celia&amp;quot;,    &amp;quot;Rice&amp;quot;,    to_date(&amp;quot;19821024&amp;quot;,&amp;quot;YYYYMMDD&amp;quot;), to_date(&amp;quot;19990421&amp;quot;,&amp;quot;YYYYMMDD&amp;quot;), 2334.78, &amp;quot;Vancouver&amp;quot;,&amp;quot;Manager&amp;quot;)&lt;br /&gt;
  3  /&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into Employee(ID,  First_Name, Last_Name, Start_Date,                     End_Date,                       Salary,  City,       Description)&lt;br /&gt;
  2                values(&amp;quot;05&amp;quot;,&amp;quot;Robert&amp;quot;,   &amp;quot;Black&amp;quot;,   to_date(&amp;quot;19840115&amp;quot;,&amp;quot;YYYYMMDD&amp;quot;), to_date(&amp;quot;19980808&amp;quot;,&amp;quot;YYYYMMDD&amp;quot;), 2334.78, &amp;quot;Vancouver&amp;quot;,&amp;quot;Tester&amp;quot;)&lt;br /&gt;
  3  /&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into Employee(ID,  First_Name, Last_Name, Start_Date,                     End_Date,                       Salary, City,        Description)&lt;br /&gt;
  2                values(&amp;quot;06&amp;quot;,&amp;quot;Linda&amp;quot;,    &amp;quot;Green&amp;quot;,   to_date(&amp;quot;19870730&amp;quot;,&amp;quot;YYYYMMDD&amp;quot;), to_date(&amp;quot;19960104&amp;quot;,&amp;quot;YYYYMMDD&amp;quot;), 2334.78,&amp;quot;New York&amp;quot;,  &amp;quot;Tester&amp;quot;)&lt;br /&gt;
  3  /&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into Employee(ID,  First_Name, Last_Name, Start_Date,                     End_Date,                       Salary, City,        Description)&lt;br /&gt;
  2                values(&amp;quot;07&amp;quot;,&amp;quot;David&amp;quot;,    &amp;quot;Larry&amp;quot;,   to_date(&amp;quot;19901231&amp;quot;,&amp;quot;YYYYMMDD&amp;quot;), to_date(&amp;quot;19980212&amp;quot;,&amp;quot;YYYYMMDD&amp;quot;), 2334.78,&amp;quot;New York&amp;quot;,  &amp;quot;Manager&amp;quot;)&lt;br /&gt;
  3  /&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; insert into Employee(ID,  First_Name, Last_Name, Start_Date,                     End_Date,                       Salary, City,        Description)&lt;br /&gt;
  2                values(&amp;quot;08&amp;quot;,&amp;quot;James&amp;quot;,    &amp;quot;Cat&amp;quot;,     to_date(&amp;quot;19960917&amp;quot;,&amp;quot;YYYYMMDD&amp;quot;), to_date(&amp;quot;20020415&amp;quot;,&amp;quot;YYYYMMDD&amp;quot;), 2334.78,&amp;quot;Vancouver&amp;quot;, &amp;quot;Tester&amp;quot;)&lt;br /&gt;
  3  /&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; -- display data in the table&lt;br /&gt;
SQL&amp;gt; select * from Employee&lt;br /&gt;
  2  /&lt;br /&gt;
ID   FIRST_NAME           LAST_NAME            START_DAT END_DATE      SALARY CITY                 DESCRIPTION&lt;br /&gt;
---- -------------------- -------------------- --------- --------- ---------- -------------------- --------------------------------------------------------------------------------&lt;br /&gt;
01   Jason                Martin               25-JUL-96 25-JUL-06    1234.56 Toronto              Programmer&lt;br /&gt;
02   Alison               Mathews              21-MAR-76 21-FEB-86    2334.78 Vancouver            Tester&lt;br /&gt;
03   James                Smith                12-DEC-78 15-MAR-90    2334.78 Vancouver            Tester&lt;br /&gt;
04   Celia                Rice                 24-OCT-82 21-APR-99    2334.78 Vancouver            Manager&lt;br /&gt;
05   Robert               Black                15-JAN-84 08-AUG-98    2334.78 Vancouver            Tester&lt;br /&gt;
06   Linda                Green                30-JUL-87 04-JAN-96    2334.78 New York             Tester&lt;br /&gt;
07   David                Larry                31-DEC-90 12-FEB-98    2334.78 New York             Manager&lt;br /&gt;
08   James                Cat                  17-SEP-96 15-APR-02    2334.78 Vancouver            Tester&lt;br /&gt;
8 rows selected.&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 UpdateMyEmployee&lt;br /&gt;
  2         ( name_in IN varchar2 )&lt;br /&gt;
  3      IS&lt;br /&gt;
  4          mySalary number;&lt;br /&gt;
  5&lt;br /&gt;
  6          cursor c1 is&lt;br /&gt;
  7          select salary&lt;br /&gt;
  8            from employee&lt;br /&gt;
  9            where first_name = name_in;&lt;br /&gt;
 10&lt;br /&gt;
 11      BEGIN&lt;br /&gt;
 12&lt;br /&gt;
 13          open c1;&lt;br /&gt;
 14          fetch c1 into mySalary;&lt;br /&gt;
 15&lt;br /&gt;
 16          if c1%notfound then&lt;br /&gt;
 17               mySalary := 9999;&lt;br /&gt;
 18          end if;&lt;br /&gt;
 19&lt;br /&gt;
 20          insert into employee(first_name, salary) values ( name_in, mySalary );&lt;br /&gt;
 21&lt;br /&gt;
 22          commit;&lt;br /&gt;
 23&lt;br /&gt;
 24          close c1;&lt;br /&gt;
 25&lt;br /&gt;
 26      EXCEPTION&lt;br /&gt;
 27      WHEN OTHERS THEN&lt;br /&gt;
 28            raise_application_error(-20001,&amp;quot;An error was encountered - &amp;quot;||SQLCODE||&amp;quot; -ERROR- &amp;quot;||SQLERRM);&lt;br /&gt;
 29      END UpdateMyEmployee;&lt;br /&gt;
 30      /&lt;br /&gt;
Procedure created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; exec UpdateMyEmployee(&amp;quot;Linda&amp;quot;);&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; select * from Employee;&lt;br /&gt;
ID   FIRST_NAME           LAST_NAME            START_DAT END_DATE      SALARY CITY                 DESCRIPTION&lt;br /&gt;
---- -------------------- -------------------- --------- --------- ---------- -------------------- --------------------------------------------------------------------------------&lt;br /&gt;
01   Jason                Martin               25-JUL-96 25-JUL-06    1234.56 Toronto              Programmer&lt;br /&gt;
02   Alison               Mathews              21-MAR-76 21-FEB-86    2334.78 Vancouver            Tester&lt;br /&gt;
03   James                Smith                12-DEC-78 15-MAR-90    2334.78 Vancouver            Tester&lt;br /&gt;
04   Celia                Rice                 24-OCT-82 21-APR-99    2334.78 Vancouver            Manager&lt;br /&gt;
05   Robert               Black                15-JAN-84 08-AUG-98    2334.78 Vancouver            Tester&lt;br /&gt;
06   Linda                Green                30-JUL-87 04-JAN-96    2334.78 New York             Tester&lt;br /&gt;
07   David                Larry                31-DEC-90 12-FEB-98    2334.78 New York             Manager&lt;br /&gt;
08   James                Cat                  17-SEP-96 15-APR-02    2334.78 Vancouver            Tester&lt;br /&gt;
     Linda                                                            2334.78&lt;br /&gt;
9 rows selected.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; -- clean the table&lt;br /&gt;
SQL&amp;gt; drop table Employee&lt;br /&gt;
  2  /&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;
  &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>