⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 querysql.html

📁 关于hibernate的中文文档 关于hibernate的中文文档 关于hibernate的中文文档 关于hibernate的中文文档
💻 HTML
📖 第 1 页 / 共 3 页
字号:
    &lt;return alias="person" class="eg.Person"/&gt;    &lt;return-join alias="address" property="person.mailingAddress"/&gt;&lt;/resultset&gt;&lt;sql-query name="personsWith" resultset-ref="personAddress"&gt;    SELECT person.NAME AS {person.name},           person.AGE AS {person.age},           person.SEX AS {person.sex},           adddress.STREET AS {address.street},           adddress.CITY AS {address.city},           adddress.STATE AS {address.state},           adddress.ZIP AS {address.zip}    FROM PERSON person    JOIN ADDRESS adddress        ON person.ID = address.PERSON_ID AND address.TYPE='MAILING'    WHERE person.NAME LIKE :namePattern&lt;/sql-query&gt;</pre><div class="sect2" lang="zh-cn"><div class="titlepage"><div><div><h3 class="title"><a name="propertyresults"></a>16.3.1.&nbsp;&#20351;&#29992;return-property&#26469;&#26126;&#30830;&#22320;&#25351;&#23450;&#23383;&#27573;/&#21035;&#21517;</h3></div></div><div></div></div><p>				&#20351;&#29992;<tt class="literal">&lt;return-property&gt;</tt>&#20320;&#21487;&#20197;&#26126;&#30830;&#30340;&#21578;&#35785;Hibernate&#20351;&#29992;&#21738;&#20123;&#23383;&#27573;&#21035;&#21517;,&#36825;&#21462;&#20195;&#20102;&#20351;&#29992;<tt class="literal">{}</tt>-&#35821;&#27861;				&#26469;&#35753;Hibernate&#27880;&#20837;&#23427;&#33258;&#24049;&#30340;&#21035;&#21517;.             </p><pre class="programlisting">&lt;sql-query name="mySqlQuery"&gt;    &lt;return alias="person" class="eg.Person"&gt;      &lt;return-property name="name" column="myName"/&gt;      &lt;return-property name="age" column="myAge"/&gt;      &lt;return-property name="sex" column="mySex"/&gt;    &lt;/return&gt;    SELECT person.NAME AS myName,           person.AGE AS myAge,           person.SEX AS mySex,    FROM PERSON person WHERE person.NAME LIKE :name&lt;/sql-query&gt;</pre><tt class="literal">&lt;return-property&gt;</tt>&#20063;&#21487;&#29992;&#20110;&#22810;&#20010;&#23383;&#27573;,&#23427;&#35299;&#20915;&#20102;&#20351;&#29992;<tt class="literal">{}</tt>-&#35821;&#27861;&#19981;&#33021;&#32454;&#31890;&#24230;&#25511;&#21046;&#22810;&#20010;&#23383;&#27573;&#30340;&#38480;&#21046;             <pre class="programlisting">&lt;sql-query name="organizationCurrentEmployments"&gt;            &lt;return alias="emp" class="Employment"&gt;                         &lt;return-property name="salary"&gt;                &lt;return-column name="VALUE"/&gt;               &lt;return-column name="CURRENCY"/&gt;                         &lt;/return-property&gt;             &lt;return-property name="endDate" column="myEndDate"/&gt;            &lt;/return&gt;            SELECT EMPLOYEE AS {emp.employee}, EMPLOYER AS {emp.employer},             STARTDATE AS {emp.startDate}, ENDDATE AS {emp.endDate},            REGIONCODE as {emp.regionCode}, EID AS {emp.id}, VALUE, CURRENCY            FROM EMPLOYMENT            WHERE EMPLOYER = :id AND ENDDATE IS NULL            ORDER BY STARTDATE ASC&lt;/sql-query&gt;</pre><p>				&#27880;&#24847;&#22312;&#36825;&#20010;&#20363;&#23376;&#20013;,&#25105;&#20204;&#20351;&#29992;&#20102;<tt class="literal">&lt;return-property&gt;</tt>&#32467;&#21512;<tt class="literal">{}</tt>&#30340;&#27880;&#20837;&#35821;&#27861;.				&#20801;&#35768;&#29992;&#25143;&#26469;&#36873;&#25321;&#22914;&#20309;&#24341;&#29992;&#23383;&#27573;&#20197;&#21450;&#23646;&#24615;.            </p><p>			 &#22914;&#26524;&#20320;&#26144;&#23556;&#19968;&#20010;&#35782;&#21035;&#22120;(discriminator),&#20320;&#24517;&#39035;&#20351;&#29992;<tt class="literal">&lt;return-discriminator&gt;</tt> &#26469;&#25351;&#23450;&#35782;&#21035;&#22120;&#23383;&#27573;            </p></div><div class="sect2" lang="zh-cn"><div class="titlepage"><div><div><h3 class="title"><a name="sp_query"></a>16.3.2.&nbsp;&#20351;&#29992;&#23384;&#20648;&#36807;&#31243;&#26469;&#26597;&#35810;</h3></div></div><div></div></div><p>				 Hibernate 3&#24341;&#20837;&#20102;&#23545;&#23384;&#20648;&#36807;&#31243;&#26597;&#35810;(stored procedure)&#21644;&#20989;&#25968;(function)&#30340;&#25903;&#25345;.&#20197;&#19979;&#30340;&#35828;&#26126;&#20013;&#65292;&#36825;&#20108;&#32773;&#19968;&#33324;&#37117;&#36866;&#29992;&#12290;				 				 &#23384;&#20648;&#36807;&#31243;/&#20989;&#25968;&#24517;&#39035;&#36820;&#22238;&#19968;&#20010;&#32467;&#26524;&#38598;,&#20316;&#20026;Hibernate&#33021;&#22815;&#20351;&#29992;&#30340;&#31532;&#19968;&#20010;&#22806;&#37096;&#21442;&#25968;.				 				 &#19979;&#38754;&#26159;&#19968;&#20010;Oracle9&#21644;&#26356;&#39640;&#29256;&#26412;&#30340;&#23384;&#20648;&#36807;&#31243;&#20363;&#23376;.</p><pre class="programlisting">CREATE OR REPLACE FUNCTION selectAllEmployments     RETURN SYS_REFCURSOR AS     st_cursor SYS_REFCURSOR; BEGIN     OPEN st_cursor FOR  SELECT EMPLOYEE, EMPLOYER,  STARTDATE, ENDDATE,  REGIONCODE, EID, VALUE, CURRENCY  FROM EMPLOYMENT;       RETURN  st_cursor;  END;</pre><p>    				 &#22312;Hibernate&#37324;&#35201;&#35201;&#20351;&#29992;&#36825;&#20010;&#26597;&#35810;,&#20320;&#38656;&#35201;&#36890;&#36807;&#21629;&#21517;&#26597;&#35810;&#26469;&#26144;&#23556;&#23427;.			 </p><pre class="programlisting">&lt;sql-query name="selectAllEmployees_SP" callable="true"&gt;    &lt;return alias="emp" class="Employment"&gt;        &lt;return-property name="employee" column="EMPLOYEE"/&gt;        &lt;return-property name="employer" column="EMPLOYER"/&gt;                    &lt;return-property name="startDate" column="STARTDATE"/&gt;        &lt;return-property name="endDate" column="ENDDATE"/&gt;                    &lt;return-property name="regionCode" column="REGIONCODE"/&gt;                    &lt;return-property name="id" column="EID"/&gt;                                &lt;return-property name="salary"&gt;             &lt;return-column name="VALUE"/&gt;            &lt;return-column name="CURRENCY"/&gt;                    &lt;/return-property&gt;    &lt;/return&gt;    { ? = call selectAllEmployments() }&lt;/sql-query&gt;</pre><p>			  &#27880;&#24847;&#23384;&#20648;&#36807;&#31243;&#24403;&#21069;&#20165;&#20165;&#36820;&#22238;&#26631;&#37327;&#21644;&#23454;&#20307;.&#29616;&#22312;&#19981;&#25903;&#25345;<tt class="literal">&lt;return-join&gt;</tt>&#21644;<tt class="literal">&lt;load-collection&gt;</tt>			               </p><div class="sect3" lang="zh-cn"><div class="titlepage"><div><div><h4 class="title"><a name="querysql-limits-storedprocedures"></a>16.3.2.1.&nbsp;&#20351;&#29992;&#23384;&#20648;&#36807;&#31243;&#30340;&#35268;&#21017;&#21644;&#38480;&#21046;</h4></div></div><div></div></div><p>				   &#20026;&#20102;&#22312;Hibernate&#20013;&#20351;&#29992;&#23384;&#20648;&#36807;&#31243;,&#20320;&#24517;&#39035;&#36981;&#24490;&#19968;&#20123;&#35268;&#21017;.&#19981;&#36981;&#24490;&#36825;&#20123;&#35268;&#21017;&#30340;&#23384;&#20648;&#36807;&#31243;&#23558;&#19981;&#21487;&#29992;.&#22914;&#26524;&#20320;&#20173;&#28982;&#24819;&#35201;&#20351;&#29992;&#20182;&#20204;,				   &#20320;&#24517;&#39035;&#36890;&#36807;<tt class="literal">session.connection()</tt>&#26469;&#25191;&#34892;&#20182;&#20204;.&#36825;&#20123;&#35268;&#21017;&#38024;&#23545;&#20110;&#19981;&#21516;&#30340;&#25968;&#25454;&#24211;.&#22240;&#20026;&#25968;&#25454;&#24211;				   &#25552;&#20379;&#21830;&#26377;&#21508;&#31181;&#19981;&#21516;&#30340;&#23384;&#20648;&#36807;&#31243;&#35821;&#27861;&#21644;&#35821;&#20041;.               </p><p>                   &#23545;&#23384;&#20648;&#36807;&#31243;&#36827;&#34892;&#30340;&#26597;&#35810;&#26080;&#27861;&#20351;&#29992;<tt class="literal">setFirstResult()/setMaxResults()</tt>&#36827;&#34892;&#20998;&#39029;&#12290;               </p><p>&#24314;&#35758;&#37319;&#29992;&#30340;&#35843;&#29992;&#26041;&#24335;&#26159;&#26631;&#20934;SQL92: <tt class="literal">{ ? = call        functionName(&lt;parameters&gt;) }</tt> &#25110;&#32773; <tt class="literal">{ ? = call        procedureName(&lt;parameters&gt;}</tt>.&#21407;&#29983;&#35843;&#29992;&#35821;&#27861;&#19981;&#34987;&#25903;&#25345;&#12290;</p><p>				   &#23545;&#20110;Oracle&#26377;&#22914;&#19979;&#35268;&#21017;:

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -