SQL SERVER Óαê
SqlServer 2000 ÓαêÓ÷¨Ð¡Àý ·µ¯ÑºÎ²É£Cannon(¿¨Ù¯) »
--------------------------------------------------------------------------------
DECLARE CURSOR (T-SQL)´´½¨Óαê
September 14th, 2006 by OoperMan (1 votes, average: 5 out of 5) Loading ...
SQL Server 2005 Áª»ú´ÔÊé
DECLARE CURSOR (Transact-SQL)
¸üÐÂÈÕÆÚ£º 2005 Äê 12 Ô 5 ÈÕ
¶¨Òå Transact-SQL ·þÎñÆ÷ÓαêµÄÊôÐÔ£¬ÀýÈçÓαêµÄ¹ö¶¯ÐÐΪºÍÓÃÓÚÉú³ÉÓαêËù²Ù×÷µÄ½á¹û¼¯µÄ²éѯ¡£DECLARE CURSOR ½ÓÊÜ»ùÓÚ SQL-92 ±ê×¼µÄÓï·¨ºÍʹÓÃÒ»×é Transact-SQL À©Õ¹²å¼þµÄÓï·¨¡£
Transact-SQL Óï·¨Ô¼¶¨
Óï·¨
SQL 92 Syntax
DECLARE cursor_name [ INSENSITIVE ] [ SCROLL ] CURSOR
FOR select_statement
[ FOR ...{ READ ONLY | UPDATE [ OF column_name [ ,...n ] ] } ]
[;]
Transact-SQL Extended Syntax
DECLARE cursor_name CURSOR [ LOCAL | GLOBAL ]
[ FORWARD_ONLY | SCROLL ]
[ STATIC | KEYSET | DYNAMIC | FAST_FORWARD ]
[ READ_ONLY | SCROLL_LOCKS | OPTIMISTIC ]
[ TYPE_WARNING ]
FOR select_statement
[ FOR UPDATE [ OF column_name [ ,...n ] ] ]
[;]
²ÎÊý
cursor_name
Ëù¶¨ÒåµÄ Transact-SQL ·þÎñÆ÷ÓαêµÄÃû³Æ¡£cursor_name ±ØÐë·ûºÏ±êʶ·û¹æÔò¡£Óйرêʶ·û¹æÔòµÄÏêϸÐÅÏ¢£¬Çë²ÎÔÄʹÓñêʶ·û×÷Ϊ¶ÔÏóÃû³Æ¡£
INSENSITIVE
¶¨ÒåÒ»¸öÓα꣬ÒÔ´´½¨½«ÓɸÃÓαêʹÓõÄÊý¾ÝµÄÁÙʱ¸´±¾¡£¶ÔÓαêµÄËùÓÐÇëÇó¶¼´Ó tempdb ÖеÄÕâÒ»ÁÙʱ±íÖеõ½Ó¦´ð£»Òò´Ë£¬ÔÚ¶Ô¸ÃÓÎ±ê½øÐÐÌáÈ¡²Ù×÷ʱ·µ»ØµÄÊý¾ÝÖв»·´Ó³¶Ô»ù±íËù×öµÄÐ޸쬲¢ÇÒ¸ÃÓα겻ÔÊÐíÐ޸ġ£Ê¹Óà SQL-92 Ó﷨ʱ£¬Èç¹ûÊ¡ÂÔ INSENSITIVE£¬ÔòÒÑÌá½»µÄ£¨ÈκÎÓû§£©¶Ô»ù´¡±íµÄɾ³ýºÍ¸üж¼·´Ó³ÔÚºóÃæµÄÌáÈ¡ÖС£
SCROLL
Ö¸¶¨ËùÓеÄÌáȡѡÏFIRST¡¢LAST¡¢PRIOR¡¢NEXT¡¢RELATIVE¡¢ABSOLUTE£©¾ù¿ÉÓá£Èç¹ûδÔÚ SQL-92 DECLARE CURSOR ÖÐÖ¸¶¨ SCROLL£¬Ôò NEXT ÊÇΨһ֧³ÖµÄÌáȡѡÏî¡£Èç¹ûÒ²Ö¸¶¨ÁË FAST_FORWARD£¬Ôò²»ÄÜÖ¸¶¨ SCROLL¡£
select_statement
¶¨ÒåÓαê½á¹û¼¯µÄ±ê×¼ SELECT Óï¾ä¡£ÔÚÓαêÉùÃ÷µÄ select_statement ÄÚ²»ÔÊÐíʹÓùؼü×Ö COM
Ïà¹ØÎĵµ£º
ÔÚÊý¾Ý¿âÓ¦ÓóÌÐò·¢²¼Ê±£¬¿Í»§¶Ë°²×°ÔÚ¾ÖÓòÍøÖеÄÖ÷»úAÉÏ£¬sql server °²×°ÔڸþÖÓòÍøµÄÖ÷»úBÉÏ¡£¿Í»§¶ËÈí¼þÖаüº¬ÓÐËüÒªÁ¬½ÓµÄÊý¾Ý¿âµÄÐÅÏ¢¡£ÈçÊý¾ÝÔ´£¬·þÎñÆ÷Ãû³Æ£¬Êý¾Ý¿âµÈ£¬ÊµÀý£ºdata source=SQLOLEDB;SERVER=DongZi\sqlExpress;uid=sa;pwd=123;database=MachineRoom
¡£ÄÇôÎÒÃÇÔÚÖ÷» ......
ÔÚ.Net Framework 3.5 ÖУ¬×¶¯ÈËÐĵľÍÊÇÔö¼ÓÁËLINQ¹¦ÄÜ£¬LINQÔÚÊý¾Ý¼¯³ÉµÄ»ù´¡ÉÏÌṩÁËеÄÇáÐÍ·½Ê½¡£ÓÐÁËLINQ£¬ÎÒÃÇ´´½¨µÄ²éѯÏÖÔھͱà³ÌÁË.Net ¿ò¼ÜµÄÒ»¸ö³ÉÔ±£¬ÔÚ¶ÔÒª²Ù×÷µÄÊý¾Ý´æ´¢Ö´Ðвéѯʱ£¬»áºÜ¿ì·¢ÏÖËûÃÇÏÖÔڵIJÙ×÷·½Ê½ÀàËÆÓÚϵͳÖеÄÀàÐÍ¡£Õâ˵Ã÷£¬ÏÖÔÚ¿ÉÒÔʹÓÃÈÎÒâ¼æÈÝ.Net µÄÓïÑÔÀ´²éѯµ×²ãµÄÊý¾Ý´æ´¢£¬Õ ......
1.Çå¿ÕÈÕÖ¾
DUMP TRANSACTION ¿âÃû WITH NO_LOG
2.½Ø¶ÏÊÂÎñÈÕÖ¾£º
BACKUP LOG Êý¾Ý¿âÃû WITH NO_LOG
......
±äÁ¿ÉùÃ÷
Syntax:
identifier [CONSTANT] datatype [NOT NULL] [:= | DEFAULT expr];
SQL> declare
2 a date;
3 b number(20) not null :=100;
4 c varchar2(10);
5 d constant number(20) default 1000;
6 begin
7 null;
8 end;
9 /
PL/SQL procedure successful ......