±¾ÈËдµÄµÚÒ»¸öPL/SQL¹ý³Ì
¿´µ½±ðÈËÔÚÂÛ̳µÄÌáÎÊ£º
Ò»¸ö±íµÄЧÂÊÎÊÌâ
½ñÌìÅöµ½2Õűí
1ÕÅ ÓÐ×Ö¶Î
±íAÓÐ
jtbh(¼ÒÍ¥±àºÅ) hzxm(»§Ö÷ÐÕÃû) hnbh(»§ÄÚ×î´ó±àºÅ)
1000 ÕÅÈý 03
1001 ÕÔÁù..........................
±íBÓÐ
grbh£¨¸öÈ˱àºÅ=¼ÒÍ¥±àºÅ+2λ»§ÄÚ±àºÅ) xm(ÐÕÃû) gz(¹¤×Ê)
100001 ÕÅÈý 1000
100002 ÀîËÄ 1000
100003 ÍõÎå 1000
2ÕűíÊý¾Ý¼¸Ê®W¡£¡£¡£¡£ÏÖÔÚÓÉÓÚ֮ǰά»¤²»ºÃ£¬±íAµÄ×î´ó±àºÅûÓиüУ¬ÀýÈç±íB 1001Õâ»§ÈËÓÐ4¸ö±àºÅ£¬100101£¬100102 £¬100103£¬100105ÕâÑù£¬µ«ÊÇÎÒ±íA»§ÄÚ×î´ó±àºÅ¿ÉÄÜÖ»µ½ÁË04£¬¶øÊµ¼ÊÉÏÒªµ½05£¬ÇëÎʸ÷λ´óÏÀÈçºÎ¸üÐÂÓÐЧÂÊ£¬ÎÒ×Ô¼ºÐ´Á˸öЧÂÊÌ«µÍÁË¡£¡£¡£¡£¡£
ÓÚÊÇдÁËÏÂÃæµÄ¹ý³Ì£¬µÚÒ»´Îд£¬¼Ç¼һÏ¡£
CREATE PROCEDURE update_for_csdner();
CURSOR v_cursor IS SELECT MAX(substr(grbh, 4, 2)) hnbh, substr(grbh, 0, 4) jtbh from b GROUP BY substr(grbh, 0, 4);
v_jtbh VARCHAR2(4);
v_hnbh VARCHAR2(2);
BEGIN
OPEN v_cursor;
LOOP
FETCH v_cursor INTO v_hnbh, v_jtbh;
EXIT WHEN v_cursor%NOTFOUND;
UPDATE A SET hnbh = v_hnbh WHERE jtbh = v_jtbh;
COMMIT;
END LOOP;
CLOSE v_cursor;
END;
Ïà¹ØÎĵµ£º
ϵͳ»·¾³£ºWindows 7
Èí¼þ»·¾³£ºVisual C++ 2008 SP1 +SQL Server 2005
±¾´ÎÄ¿µÄ£º±àдһ¸öº½¿Õ¹ÜÀíϵͳ
ÕâÊÇÊý¾Ý¿â¿Î³ÌÉè¼ÆµÄ³É¹û£¬ËäÈ»³É¼¨²»¼Ñ£¬µ«ÊÇ×÷ΪÎÒÓÃVC++ ÒÔÀ´±àдµÄ×î´ó³ÌÐò»¹ÊÇ´«µ½ÍøÉÏ£¬ÒÔ¹©²Î¿¼¡£ÓÃVC++ ×öÊý¾Ý¿âÉè¼Æ²¢²»ÈÝÒ×£¬µ«Ò²²»ÊDz»¿ÉÄÜ¡£ÒÔÏÂÊÇÎҵijÌÐò½çÃæ£¬ºóÃæ ......
ÎÒÃǶ¼ÖªµÀÔÚOracleÖÐÿÌõSQLÓï¾äÔÚÖ´ÐÐ֮ǰ¶¼ÐèÒª¾¹ý½âÎö£¬ÕâÀïÃæÓÖ·ÖΪÈí½âÎöºÍÓ²½âÎö¡£ÔÚOracleÖдæÔÚÁ½ÖÖÀàÐ͵ÄSQLÓï¾ä£¬Ò»ÀàΪ
DDLÓï¾ä£¨Êý¾Ý¶¨ÒåÓïÑÔ£©£¬ËûÃÇÊÇ´ÓÀ´²»»á¹²ÏíʹÓõģ¬Ò²¾ÍÊÇÿ´ÎÖ´Ðж¼ÐèÒª½øÐÐÓ²½âÎö¡£»¹ÓÐÒ»Àà¾ÍÊÇDMLÓï¾ä£¨Êý¾Ý²Ù×ÝÓïÑÔ£©£¬ËûÃÇ»á¸ù¾ ......
1 ·ÀÖ¹sql×¢Èëʽ¹¥»÷(¿ÉÓÃÓÚUI²ã¿ØÖÆ£© #region ·ÀÖ¹sql×¢Èëʽ¹¥»÷(¿ÉÓÃÓÚUI²ã¿ØÖÆ£©
2
3 /**/ ///
4 /// ÅжÏ×Ö·û´®ÖÐÊÇ·ñÓÐSQL¹¥»÷´úÂë
5 ///
6 /// ´«ÈëÓû§Ìá½»Êý¾Ý
7 /// ......
½ñÌìÒ»¸öÅóÓÑÎʵ½Õâ¸öÎÊÌ⣬ÆäʵºÜºÃ½â¾ö£º
declare @dbname varchar(50)
declare c_database cursor for
select name from master.dbo.sysdatabas ......