²Â²Â¿´£¬Hibernate»áÖ´Ðм¸¾äSQL(Ò»)
POEAAÖнéÉÜÁËORMÖÐ×îÖØÒªµÄģʽ֮һ£ºUnit Of Work¡£¿´ËƼòµ¥£¬ÊµÏÖÆðÀ´È´·Ç³£¸´ÔÓ¡£
HibernateÍêÃÀµÄʵÏÖÁËÕâ¸öģʽ¡£ÒÔÏÂÎÒÓÃһϵÁеÄÀý×ÓÀ´·ÖÎöHibernateµÄ´¦Àí»úÖÆ
ÏÂÃæÓÐÈý¸öÀý×Ó£¬²Â²Â¿´Hibernate»áÖ´Ðм¸¾äSQL(Ê¡ÂÔÊÂÎñ´¦Àí´úÂ룬ʵÌå¶ÔÏó½ÐUser£¬¼ÙÉèÖ÷¼üÊÇ×ÔÔöÐ͵Ä)
Àý1:
User user = new User();
user.setName("KENT");
session.save(user);
session.save(user);
Àý2:
User user = new User();
user.setName("KENT");
session.save(user);
user.setName("JACK");
session.save(user);
Àý3:
User user = new User();
user.setName("KENT");
session.save(user);
user.setName("JACK");
session.save(user);
user.setName("TOM");
session.save(user);
ÈÃÎÒÃÇ¿´¿´´ð°¸
Àý1:Á½´Îsave£¬½ö½öÖ´ÐÐinsertÓï¾äÒ»´Î£¬Ã»ÓÐÖ´ÐÐupdate
Àý2:Ö´ÐÐinsertÓï¾äÒ»´Î£¬ÏÈinsert³ÉKENT£¬È»ºóÖ´ÐÐupdate£¬È»ºóupdate³ÉJACK
Àý3:Ö´ÐÐinsertÓï¾äÒ»´Î£¬ÏÈinsert³ÉKENT£¬È»ºóÖ´ÐÐupdate£¬È»ºóupdate³ÉTOM£¬Ã»ÓÐupdate³ÉJACKµÄ¹ý³Ì
Äã²Â¶ÔÁËÂð£¿
ÎÒÃÇ¿´HibernateÔ´Â룬¿´µ½UnitOfWork´óÖÂÔÀíÊÇÕâÑùµÄ£º
Hibernate²¢²»ÊÇsave()Á˾ÍÖ±½ÓÖ´ÐÐsql£¬¶øÊÇʹÓÃÑÓʱִÐеķ½Ê½¡£Ö±µ½flushʱ²Å»áÒ»´ÎÐÔÖ´Ðжà¾äsql
HibernateʹÓÃAction½Ó¿Ú±íʾÿ´ÎÔöɾ¸ÄµÄÐÐΪ£¬ËùÓеÄÐÐΪ¶¼Ê¹ÓÃActionQueueÅÅÐò
µ±Ö´ÐÐÒ»´Îsave()·½·¨£¬Hibernate»áÅжϴ˶ÔÏóµÄ״̬¡£Èç¹ûÊÇTransient¾ÍÔÚActionQueueÖÐÔö¼ÓÒ»¸öInsertAction£¬²¢Éú³É´Ë¶ÔÏóµÄÖ÷¼ü£¬°Ñ´Ë¶ÔÏó±ê¼ÇΪPersistent¡£Í¬Ê±£¬»á°ÑËùÓÐÊôÐÔµÄ״̬±£´æµ½Ò»¸öÊý×éÖС£
ÔÙ´ÎÖ´ÐÐsave()·½·¨Ê±£¬Èç¹ûÊÇPersistent£¬²¢²»»áÖ±½Ó²úÉúupdateAction
µ±Êý¾Ýcommit֮ǰ£¬Ò»¶¨»áÖ´ÐÐflush()£¬¸ù¾Ý±£´æµÄËùÓÐÊôÐÔµÄ״̬£¬Åжϵ±Ç°¶ÔÏóµÄ×Ö¶ÎÊÇ·ñ±»¸üйý£¬Èç¹û±»¸üйý£¬Ôò»áÔÚActionQueueÖÐÔö¼ÓÒ»¸öUpdateAction
ËùÒÔ
Àý1»á²úÉúInsertAction
Àý2»á²úÉúInsertAction¡¢UpdateAction
Àý3»á²úÉúInsertAction¡¢UpdateAction
´ËÀýÖÐÖ»ÊÇÐÂÔö»òÐ޸ģ¬Èç¹ûÓÐɾ³ýºÍ²éѯ£¬HibernateÓÖ»áÈçºÎ´¦ÀíÄØ£¿
Çë¿´ºóÎÄ......
Ïà¹ØÎĵµ£º
Join²Ù×÷·û
ÊÊÓó¡¾°£ºÔÚÎÒÃÇ±í¹ØÏµÖÐÓÐÒ»¶ÔÒ»¹ØÏµ£¬Ò»¶Ô¶à¹ØÏµ£¬¶à¶Ô¶à¹ØÏµµÈ¡£¶Ô¸÷¸ö±íÖ®¼äµÄ¹ØÏµ£¬¾ÍÓÃÕâЩʵÏÖ¶Ô¶à¸ö±íµÄ²Ù×÷¡£
˵Ã÷£ºÔÚJoin²Ù×÷ÖУ¬·Ö±ðΪJoin(Join²éѯ), SelectMany(SelectÒ»¶Ô¶àÑ¡Ôñ)ºÍGroupJoin(·Ö×éJoin²éѯ)¡£
¸ÃÀ©Õ¹·½·¨¶ÔÁ½¸öÐòÁÐÖмüÆ¥ÅäµÄÔªËØ½øÐÐinner join²Ù×÷
SelectMany
˵Ã÷£ºÎÒà ......
1.ʹÓÃManagement Studio Express£¬ÓÓWindowsÉí·ÝÑéÖ¤”µÇ¼£¬Ñ¡ÖÐSQL·þÎñÆ÷Ãû£¬ÓÒ»÷Êó±êÑ¡ÔñÊôÐÔ£¬ÔÚ·þÎñÆ÷ÊôÐÔÑ¡ÏîÒ³Ãæ£¬Ñ¡Ôñ“°²È«ÐÔ”£¬½«·þÎñÆ÷Éí·ÝÑéÖ¤ÓÉ“WindowsÉí·ÝÑéÖ¤”¸ÄΪ“SQL ServerºÍWindowsÉí·ÝÑéÖ¤”£¬µ¥»÷È·¶¨¡£
2.ʹÓÃSQL Server 2005ÍâΧӦÓà ......
Ê×ÏÈ£¬ÓÃwindows Éí·ÝÑéÖ¤ µÇ½ sql server 2005
ÒÀ´ÎÕ¹¿ª
°²È«ÐÔ->µÇ¼Ãû
Ñ¡ÖÐ sa ÓÒ¼üµ¥»÷
Ñ¡ÖÐ ÊôÐÔ
µ¯³ö sa µÄÊôÐÔ¶Ô»°¿ò
¾ÍÔÚÃÜÂë´¦ ¸Ä ÃÜÂë ÐÐÁË
¸ÄÁËÃÜÂëºó Óà sa ºÍ Äã¸ÄµÄÃÜÂëµÇ½
Èç¹û»¹µÇ½²»ÉÏ
¾ÍÊÇÄãû´ò¿ª sql serverºÍ windowsÉí·ÝÑéÖ¤
ºÍûÊÚÓè sa µÇ½ȨÏÞ
½â¾ö°ì·¨ÈçÏÂ
£º£º£º£º ......
ÊÂÎñ¾ÍÊǸºÔð°ÑһϵÁвÙ×÷¿´×öÒ»¸ö¶ÀÁ¢µÄÂß¼µ¥Ôª£¬ÕâЩ²Ù×÷Ҫôͬʱ³É¹¦£¬ÒªÃ´Í¬Ê±Ê§°Ü¡£ÏÂÃæÊÇÒ»¸ö¾µäµÄÀý×Ó£º
create procedure TransferMoeny
(
@fromAccountNo varchar(50),-- ת³öÕ˺Å
@ToAccountNo varchar(50),--תÈëÕ˺Å
& ......