dz̸ÔÚHibernateÖÐʹÓÃOracle sequence
Ò». Ϊ±í´´½¨×ÔÔö³¤×Ô¶ÎÓÐÁ½ÖÖ£¬Ò»ÖÖÊDz»Í¬µÄ±íʹÓø÷×ÔµÄSequence£¬·½·¨ÈçÏ£º
1¡¢ÔÚOracle sequenceÊ×ÏÈ´´½¨sequence create sequence seq_idminvalue 1start with 1increment by 1cache 20; 2.ÔÚÄãµÄhbm.xmlÖеÄÅäÖà seq_id ÕâÑùÔÙ²åÈëÊý¾ÝµÄʱºò£¬Hibernate»á×Ô¶¯Éú³ÉÈçÏÂÓï¾ä£º hibernate: select seq_id.nextval from dualhibernate: insert into YXJK.T_YXJK_WHRYTXL (XM0000, ZW0000, LXDH00, SJHM00, DZYJ00, IP0000, ID0000) values (?, ?, ?, ?, ?, ?, ?) ×Ô¶¯Éú³ÉÏÂÒ»¸öÐòÁÐÖµ£¬È»ºó½«¶ÔÏó²åÈë±íÖС£ÔÚʹÓõÄʱºòÐèҪעÒ⣬Hibernate¶ÔÓÚsequenceµÄÖ÷¼üµÄÒªÇóÊÇÒ»¶¨ÒªÊÇshor,long£¬»òÕßinteger¡£ ¶þ »¹ÓÐÒ»ÖÖ·½Ê½ÊÇʹÓù«¹²µÄsequence Õâ¸÷ʱºò¿ÉÒÔ²»Ö¸¶¨±íʹÓõÄsequence£¬ÄÇôÏàÓ¦µÄhbm.xmlÖÐÄÚÈÝÊÇ£º È»ºó´´½¨¹«ÓÃµÄ sequence¶ÔÏó£¬ÃüÃûΪ hibernate_sequence create sequence hibernate_sequenceminvalue 0maxvalue 99999999start with 10000increment by 1; Èý ×¢ÒâÊÂÏî Èç¹ûÊý¾Ý¿âÊÇ´ÓsqlserverµÈÆäËûÊý¾Ý¿âÒÆÖ²¶øÀ´µÄ£¬ÄÇô´´½¨sequenceʱµÄÆðʼֵӦ¸Ã±Èµ±Ç°±íÖÐ×î´óµÄIDÖµ´ó£¬·ñÔò»á³öÏÖ´íÎó£¬ÒòΪsequence ²»»áά»¤ÊÇ·ñºÍµ¼¿âǰÏÖÓеÄÖµÖØ¸´¡£ 1¡¢sequence£ºÓÃÓÚOracleÊý¾Ý¿â ÐòÁÐÃû 2¡¢native£º¿çÊý¾Ý¿âʱʹÓã¬Óɵײ㷽ÑÔ²úÉú¡£
Default.sequenceΪhibernate_sequence ×¢£ºÊ¹ÓÃnativeʱHibernateĬÈÏ»áÈ¥²éÕÒOracleÖеÄhibernate_sequenceÐòÁС£Èç¹ûOracleÖÐûÓиÃÐòÁУ¬Á¬OracleÊý¾Ý¿âʱ»á±¨´í¡£
Ïà¹ØÎĵµ£º
select distinct id
from table t
where rownum < 10
order by t.id desc;
ÉÏÊöÓï¾äµÄ¹ýÂËÌõ¼þÖ´ÐÐ˳Ðò ÏÈwhere --->order by --->distinct
Èç¹ûÓÐgroup byµÄ»° group by ÔÚorder byÇ°ÃæµÄ ......
ÔÚoracleÖУ¬ÎÒÃÇ´´½¨Ò»¸öÖ÷¼ü£¬Ôòͬʱ×Ô¶¯´´½¨ÁËÒ»¸öͬÃûµÄΨһË÷Òý£»É¾³ýÖ÷¼ü£¬ÔòÖ÷¼üÔ¼ÊøºÍ¶ÔÓ¦µÄΨһË÷Òý¶¼É¾³ýÁË¡£ÕâÊÇÎÒÃǾ³£¼ûµ½µÄÏÖÏó¡£
·¢³öÒ»¸ö´´½¨Ö÷¼üµÄsql£¬oracleÆäʵִÐÐÁËÁ½²½£º´´½¨Ö÷¼üÔ¼Êø¡¢´´½¨/¹ØÁª ΨһË÷Òý¡£²½ÖèÊÇÕâÑùµÄ£º
´´½¨Ö÷¼üÔ¼ÊøÊ±£¬¼ì²é¸ÃÖ÷¼ü×Ö¶ÎÉÏÊÇ·ñÒѾ´æÔÚΨһË÷Òý¡£Èô² ......
ÀûÓÃoracleÉ󼯹¦ÄÜÀ´¼à²âÊÔ»·¾³µÄ±ä»¯
×ö¹ý²âÊÔµÄÈ˶¼Ó¦¸Ã»áÅöµ½ÕâÑùµÄÇé¿ö£º²âÊÔ·¢ÏÖµÄbugÔÚ¿ª·¢»úÆ÷ÉÏûÓгöÏÖ£¬ÏÔÈ»ÕâÊÇ»·¾³²îÒìµÄÔÒò¡£Ï൱¶àÇé¿öÏ£¬ÒòΪ²âÊÔʹÓõÄÊý¾Ý¿â½á¹¹ºÍ¿ª·¢Ê¹ÓõÄÊý¾Ý¿â½á¹¹²»Ò»ÖÂÔì³ÉµÄ¡£ÓÈÆäÊÇһЩ¹«Ë¾ÔÚÌá½»²âÊÔ°æ±¾µÄʱºò£¬×¢ÖØÓ¦Óà ......
in ÊǰÑÍâ±íºÍÄÚ±í×÷hash Á¬½Ó£¬¶øexistsÊǶÔÍâ±í×÷loopÑ»·£¬Ã¿´ÎloopÑ»·ÔÙ¶ÔÄÚ±í½øÐвéѯ¡£
Ò»Ö±ÒÔÀ´ÈÏΪexists±ÈinЧÂʸߵÄ˵·¨ÊDz»×¼È·µÄ¡£
Èç¹û²éѯµÄÁ½¸ö±í´óСÏ൱£¬ÄÇôÓÃinºÍexists²î±ð²»´ó¡£
in ÊǰÑÍâ±íºÍÄÚ±í×÷hash Á¬½Ó£¬¶øexistsÊǶÔÍâ±í×÷loopÑ»·£¬Ã¿´ÎloopÑ»·ÔÙ¶ÔÄÚ±í½øÐвéѯ¡£
Ò»Ö ......
create or replace package Pager
is
type curs is ref cursor;
procedure Pagination
(
inPageSize in integer, --ÿҳ¼Ç¼Êý
inPageIndex in integer, --µ±Ç°Ò³Êý
inTableName in varchar2, --±íÃû
inOrderField in varchar2,--ÅÅÐò×Ö¶Î
inIsOrderBy in varchar2,--ÅÅÐòÀà±ð£¬ÊäÈë' desc' »òÕß' asc'
inW ......