Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

SQLServer : EXECºÍsp_executesqlµÄÇø±ð

Author URL:http://www.cnblogs.com/xbf321/archive/2008/11/02/1325067.html
Microsoft URL:http://technet.microsoft.com/zh-cn/library/ms188001.aspx
ÕªÒª
1,EXECµÄʹÓÃ
2£¬sp_executesqlµÄʹÓÃ
       MSSQLΪÎÒÃÇÌṩÁËÁ½ÖÖ¶¯Ì¬Ö´ÐÐSQLÓï¾äµÄÃüÁ·Ö±ðÊÇEXECºÍsp_executesql;ͨ³£,sp_executesqlÔò¸ü¾ßÓÐÓÅÊÆ£¬ËüÌṩÁËÊäÈëÊä³ö½Ó¿Ú£¬¶øEXECûÓС£»¹ÓÐÒ»¸ö×î´óµÄºÃ´¦¾ÍÊÇÀûÓÃsp_executesql£¬Äܹ»ÖØÓÃÖ´Ðмƻ®£¬Õâ¾Í´ó´óÌṩÁËÖ´ÐÐÐÔÄÜ(¶ÔÓÚÕâ¸öÎÒÔÚºóÃæµÄÀý×ÓÖлáÏê¼Ó˵Ã÷)£¬»¹¿ÉÒÔ±àд¸ü°²È«µÄ´úÂë¡£EXECÔÚijЩÇé¿öÏ»á¸üÁé»î¡£³ý·ÇÄúÓÐÁîÈËÐÅ·þµÄÀíÓÉʹÓÃEXEC£¬·ñ²à¾¡Á¿Ê¹ÓÃsp_executesql.
1,EXECµÄʹÓÃ
EXECÃüÁîÓÐÁ½ÖÖÓ÷¨£¬Ò»ÖÖÊÇÖ´ÐÐÒ»¸ö´æ´¢¹ý³Ì£¬ÁíÒ»ÖÖÊÇÖ´ÐÐÒ»¸ö¶¯Ì¬µÄÅú´¦Àí¡£ÒÔÏÂËù½²µÄ¶¼ÊǵڶþÖÖÓ÷¨¡£
ÏÂÃæÏÈʹÓÃEXECÑÝʾһ¸öÀý×Ó,´úÂë1
DECLARE @TableName VARCHAR(50),@Sql NVARCHAR(MAX),@OrderID INT;
SET @TableName = 'Orders';
SET @OrderID = 10251;
SET @sql = 'SELECT * from '+QUOTENAME(@TableName) +'WHERE OrderID = '+CAST(@OrderID AS VARCHAR(10))+' ORDER BY ORDERID DESC'
EXEC(@sql);
×¢£ºÕâÀïµÄEXECÀ¨ºÅÖÐÖ»ÔÊÐí°üº¬Ò»¸ö×Ö·û´®±äÁ¿£¬µ«ÊÇ¿ÉÒÔ´®Áª¶à¸ö±äÁ¿£¬Èç¹ûÎÒÃÇÕâÑùдEXEC£º
EXEC('SELECT TOP('+ CAST(@TopCount AS VARCHAR(10)) +')* from '+QUOTENAME(@TableName) +' ORDER BY ORDERID DESC');
 
SQL±àÒëÆ÷¾Í»á±¨´í£¬±àÒ벻ͨ¹ý£¬¶øÈç¹ûÎÒÃÇÕâÑù£º
EXEC(@sql+@sql2+@sql3);
±àÒëÆ÷¾Í»áͨ¹ý£»
 
ËùÒÔ×î¼ÑµÄ×ö·¨ÊǰѴúÂë¹¹Ôìµ½Ò»¸ö±äÁ¿ÖУ¬È»ºóÔٰѸñäÁ¿×÷ΪEXECÃüÁîµÄÊäÈë²ÎÊý£¬ÕâÑù¾Í²»»áÊÜÏÞÖÆÁË£»
 
EXEC²»Ìṩ½Ó¿Ú
ÕâÀïµÄ½Ó¿ÚÊÇÖ¸£¬Ëü²»ÄÜÖ´ÐÐÒ»¸ö°üº¬Ò»¸ö´ø±äÁ¿·ûµÄÅú´¦Àí£¬ÕâÀïÕ§Ò»ÌýºÃÏñ²»Ã÷°×£¬²»Òª½ô£¬ÎÒÔÚÏÂÃæÓÐÒ»¸öʵÀý£¬ÄúÒ»¿´¾ÍÖªµÀʲôÒâ˼.
DECLARE @TableName VARCHAR(50),@Sql NVARCHAR(MAX),@OrderID INT;
SET @TableName = 'Orders';
SET @OrderID = 10251;
SET @sql = 'SELECT * from '+QUOTENAME(@TableName) +'WHERE OrderID = @OrderID ORDER BY ORDERID DESC'
EXEC(@sql);
¹Ø¼ü¾ÍÔÚSET @sqlÕâÒ»¾ä»°ÖУ¬Èç¹ûÎÒÃÇÔËÐÐÕâ¸öÅú´¦Àí£¬±àÒëÆ÷¾Í»á²úÉúһϴíÎó
Msg 137, Level 15, State 2, Line 1
±ØÐëÉùÃ÷±êÁ¿±äÁ¿ "@OrderID"¡£
ʹÓÃEXECʱ£¬Èç¹ûÄúÏë·ÃÎʱäÁ¿£¬±ØÐë°Ñ±äÁ¿ÄÚÈÝ´®Áªµ½¶¯Ì¬¹¹½¨µÄ´úÂ


Ïà¹ØÎĵµ£º

SQLServerʱ¼äÈÕÆÚº¯ÊýÏê½â,SQLServer,ʱ¼äÈÕÆÚ,


SQLServerʱ¼äÈÕÆÚº¯ÊýÏê½â,SQLServer,ʱ¼äÈÕÆÚ,
1.      µ±Ç°ÏµÍ³ÈÕÆÚ¡¢Ê±¼ä
        select getdate()
2. dateadd      ÔÚÏòÖ¸¶¨ÈÕÆÚ¼ÓÉÏÒ»¶Îʱ¼äµÄ»ù´¡ÉÏ£¬·µ»ØÐ嵀 datetime Öµ
       À ......

SqlServerÆô¶¯²ÎÊý

SqlServerÆô¶¯²ÎÊý
1.Sqlservr.exeÔËÐвÎÊý¡£
SqlServerµÄÆô¶¯¿ÉÒÔΪWindows·þÎñ·½Ê½£¨Ä¬ÈÏ£©£¬Ò²¿ÉÒÔÒÔÓ¦ÓóÌÐò·½Ê½Æô¶¯¡£ÏÂÃæ½éÉÜsqlservr.exeÒÔÓ¦ÓóÌÐò·½Ê½Æô¶¯Ê±µÄ²ÎÊýÎÊÌâ¡£
sqlservrÓ¦ÓóÌÐòÓ÷¨£º
sqlservr[-sinstance_name][-c][-dmaster_path][-f]
[-eerror_log_path][-lmaster_log_path][-m]
[-n][-Ttrace ......

sqlserver ·þÎñÔËÐв»ÁË

½ñÈÕsqlserver2000µÄ·þÎñÆô¶¯²»ÁË£¬¿´ÁËһϴíÎóÈÕÖ¾“SQL Server evaluation period has expired.”
´ÓÍøÉÏÕÒÁËÕÒ£¬ÖØÐ°²×°sqlserver2000¼´¿É£¬ÖØ×°Ê±¿ÉÄÜ»áÓöµ½“ÒÔǰµÄij¸ö³ÌÐò°²×°ÒÑÔÚ°²×°¼ÆËã»úÉÏ´´½¨¹ÒÆðµÄÎļþ²Ù×÷¡£ÔËÐа²×°³ÌÐò֮ǰ±ØÐëÖØÐÂÆô¶¯¼ÆËã»ú”´íÎ󣬿ɲ鿴±¾ÈËǰһƪÎÄÕ½â¾ö ......

Mysql£¬SqlServer£¬OracleÖ÷¼ü×Ô¶¯Ôö³¤µÄÉèÖÃ


Mysql£¬SqlServer£¬OracleÖ÷¼ü×Ô¶¯Ôö³¤µÄÉèÖÃ
1¡¢°ÑÖ÷¼ü¶¨ÒåΪ×Ô¶¯Ôö³¤±êʶ·ûÀàÐÍ
ÔÚmysqlÖУ¬Èç¹û°Ñ±íµÄÖ÷¼üÉèΪauto_incrementÀàÐÍ£¬Êý¾Ý¿â¾Í»á×Ô¶¯ÎªÖ÷¼ü¸³Öµ¡£ÀýÈ磺
create table customers(id int auto_increment primary key not null, name varchar(15));
insert into customers(name) values("name1"),("nam ......

sqlserverÓαêʹÓÃ

/***
ÓαêµÄʹÓÃ
½²ÁËÕâ¸ö¶àÓαêµÄÓŵ㣬ÏÖÔÚÎÒÃǾÍÇ××ÔÀ´½Ò¿ªÓαêµÄÉñÃØµÄÃæÉ´¡£
ʹÓÃÓαêµÄ˳Ðò£º ÉùÃûÓαꡢ´ò¿ªÓαꡢ¶ÁÈ¡Êý¾Ý¡¢¹Ø±ÕÓαꡢɾ³ýÓαꡣ
1.3.1ÉùÃ÷Óαê
×î¼òµ¥ÓαêÉùÃ÷£ºDECLARE <ÓαêÃû>CURSOR FOR<SELECTÓï¾ä>£»
ÆäÖÐselectÓï¾ä¿ÉÒÔÊǼòµ¥²éѯ£¬Ò²¿ÉÒÔÊǸ´ÔӵĽÓÁ¬²éѯºÍǶÌײéѯ
......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ