Edit D:\app\Administrator\product\11.2.0\dbhome_1\oc4j\j2ee\oc4j_applications\applications\em\em\online_help\tdddg\tdddg_subprograms024.htm
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <script src="./callback.js" type="text/javascript"></script> <noscript>Your browser does not support JavaScript. This help page requires JavaScript to render correctly.</noscript> </head> <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <meta http-equiv="Content-Script-Type" content="text/javascript" /> <meta name="generator" content="Oracle DARB XHTML Converter (Mode = ohj/ohw) - Version 5.1.1 Build 005" /> <meta name="date" content="2009-04-21T9:46:24Z" /> <meta name="robots" content="noarchive" /> <meta name="doctitle" content="Assigning Values to Variables with the SELECT INTO Statement" /> <meta name="relnum" content="11g Release 2 (11.2)" /> <meta name="partnum" content="E10766-01" /> <link rel="copyright" href="./dcommon/html/cpyr.htm" title="Copyright" type="text/html" /> <link rel="stylesheet" href="./dcommon/css/blafdoc.css" title="Oracle BLAFDoc" type="text/css" /> <link rel="contents" href="toc.htm" title="Contents" type="text/html" /> <link rel="prev" href="tdddg_subprograms023.htm" title="Previous" type="text/html" /> <link rel="next" href="tdddg_subprograms025.htm" title="Next" type="text/html" /> <title>Assigning Values to Variables with the SELECT INTO Statement</title> </head> <body> <div class="zz-skip-header"><a href="#BEGIN">Skip Headers</a></div> <table class="simple oac_no_warn" summary="" cellspacing="0" cellpadding="0" width="100%"> <col width="86%" /> <col width="*" /> <tr valign="bottom"> <td align="left"></td> <td align="center"><a href="tdddg_subprograms023.htm"><img width="24" height="24" src="./dcommon/gifs/leftnav.gif" alt="Previous" /><br /> <span class="icon">Previous</span></a> </td> <td align="center"><a href="tdddg_subprograms025.htm"><img width="24" height="24" src="./dcommon/gifs/rightnav.gif" alt="Next" /><br /> <span class="icon">Next</span></a></td> </tr> </table> <p><a id="CIHGCBBB" name="CIHGCBBB"></a><a id="TDDDG42330" name="TDDDG42330"></a></p> <div class="sect3"><!-- infolevel="all" infotype="General" --> <h1>Assigning Values to Variables with the SELECT INTO Statement</h1> <a name="BEGIN" id="BEGIN"></a> <p><a id="sthref418" name="sthref418"></a><a id="sthref419" name="sthref419"></a>To use table values in subprograms or packages, you must assign them to variables with <code>SELECT</code> <code>INTO</code> statements.</p> <p>The following example shows, in bold font, the changes to make to the <code>EMP_EVAL</code>.<code>calculate_score</code> function to have it calculate <code>running_total</code> from table values.</p> <div class="example"><a id="BABFIGBI" name="BABFIGBI"></a><a id="TDDDG227" name="TDDDG227"></a> <p class="titleinexample">Assigning Table Values to Variables with SELECT INTO</p> <pre xml:space="preserve" class="oac_no_warn"> FUNCTION calculate_score ( evaluation_id IN scores.evaluation_id%TYPE , performance_id IN scores.performance_id%TYPE ) RETURN NUMBER AS n_score scores.score%TYPE; n_weight performance_parts.weight%TYPE; running_total NUMBER := 0; max_score CONSTANT scores.score%TYPE := 9; max_weight CONSTANT performance_parts.weight%TYPE:= 1; BEGIN <span class="bold">SELECT s.score INTO n_score</span> <span class="bold">FROM SCORES s</span> <span class="bold">WHERE evaluation_id = s.evaluation_id </span> <span class="bold">AND performance_id = s.performance_id;</span> <span class="bold">SELECT p.weight INTO n_weight</span> <span class="bold">FROM PERFORMANCE_PARTS p</span> <span class="bold">WHERE performance_id = p.performance_id;</span> running_total := <span class="bold">n_score * n_weight</span>; RETURN running_total; END calculate_score; </pre></div> <!-- class="example" --> <p>The <code>add_eval</code> procedure in the following example inserts a row into the <code>EVALUATIONS</code> table, using values from the corresponding row in the <code>EMPLOYEES</code> table. Add the <code>add_eval</code> procedure to the body of the <code>EMP_EVAL</code> package, but not to the specification. Because it is not in the specification, <code>add_eval</code> is local to the package—it can be invoked only by other subprograms in the package, not from outside the package.</p> <div class="example"><a id="BABBDEHA" name="BABBDEHA"></a><a id="TDDDG228" name="TDDDG228"></a> <p class="titleinexample">Inserting a Table Row with Values from Another Table</p> <pre xml:space="preserve" class="oac_no_warn"> PROCEDURE add_eval ( employee_id IN EMPLOYEES.EMPLOYEE_ID%TYPE , today IN DATE ) AS job_id EMPLOYEES.JOB_ID%TYPE; manager_id EMPLOYEES.MANAGER_ID%TYPE; department_id EMPLOYEES.DEPARTMENT_ID%TYPE; BEGIN SELECT e.job_id INTO job_id FROM EMPLOYEES e WHERE employee_id = e.employee_id; SELECT e.manager_id INTO manager_id FROM EMPLOYEES e WHERE employee_id = e.employee_id; SELECT e.department_id INTO department_id FROM EMPLOYEES e WHERE employee_id = e.employee_id; INSERT INTO EVALUATIONS ( evaluation_id, employee_id, evaluation_date, job_id, manager_id, department_id, total_score ) VALUES ( evaluations_seq.NEXTVAL, -- evaluation_id add_eval.employee_id, -- employee_id add_eval.today, -- evaluation_date add_eval.job_id, -- job_id add_eval.manager_id, -- manager_id add_eval.department_id, -- department_id 0 -- total_score ); END add_eval; </pre></div> <!-- class="example" --> <div class="helpinfonotealso"> <h2>Related Topics</h2> <p><a href="javascript:open('http://www.oracle.com/pls/db112/lookup?id=LNPLS01345','newWindow').focus()"><span class="italic">Oracle Database PL/SQL Language Reference</span></a></p> <p><a href="tdddg_subprograms022.htm#CIHBFAGE">Assigning Values to Variables</a></p> </div> </div> <!-- class="sect3" --> <!-- class="sect2" --> <!-- class="sect1" --> <!-- Start Footer --> <div class="footer"> <table class="simple oac_no_warn" summary="" cellspacing="0" cellpadding="0" width="100%"> <col width="86%" /> <col width="*" /> <tr> <td align="left"><span class="copyrightlogo">Copyright © 1996, 2009, Oracle and/or its affiliates. All rights reserved.</span><br /> <a href="./dcommon/html/cpyr.htm"><span class="copyrightlogo">Legal Notices</span></a></td> <td align="center"><a href="tdddg_subprograms023.htm"><img width="24" height="24" src="./dcommon/gifs/leftnav.gif" alt="Previous" /><br /> <span class="icon">Previous</span></a> </td> <td align="center"><a href="tdddg_subprograms025.htm"><img width="24" height="24" src="./dcommon/gifs/rightnav.gif" alt="Next" /><br /> <span class="icon">Next</span></a></td> </tr> </table> </div> <!-- class="footer" --> </body> </html>
Ms-Dos/Windows
Unix
Write backup
jsp File Browser version 1.2 by
www.vonloesch.de