Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö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·ÖÒ³

ÏÖÔÚÒ»°ã³£ÓõÄÓÐÒÔÏÂ2ÖÖ·½·¨:
1. select top @pagesize * from table1 where id not in  (select top @pagesize*(@page-1) id  from table1 order by id) order by id
2. select *  from (select top @pagesize * from (select top @pagesize*@page * from table1 order by id) a order by id desc) b or ......

SQLServer DBA³£見問題

In the latest installment of the SQL Server interview questions, we will outline questions suitable for a DBA interview to assess the candidates skills related to SQL Server system databases. In this tip, the questions are there to read, but the answers are intentionally hidden to really test your s ......

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

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

SqlserverÓï¾ä´óÈ«

 --Óï ¾ä¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¹¦ ÄÜ 
--Êý¾Ý²Ù×÷ 
SELECT¡¡¡¡¡¡--´ÓÊý¾Ý¿â±íÖмìË÷Êý¾ÝÐкÍÁР
INSERT¡¡¡¡¡¡--ÏòÊý¾Ý¿â±íÌí¼ÓÐÂÊý¾ÝÐР
DELETE¡¡¡¡¡¡--´ÓÊý¾Ý¿â±íÖÐɾ³ýÊý¾ÝÐР
UPDATE¡¡¡¡¡¡--¸üÐÂÊý¾Ý¿â±íÖеÄÊý¾Ý 
--Êý¾Ý¶¨Òå 
CREATE TABLE¡¡¡¡--´´½¨Ò»¸öÊý¾Ý¿â ......

datagirdviewºÍlistview,ɾ¸Ä²ésqlserverÊý¾Ý¿âµÄС½á

        //´´½¨DBhelperÊý¾Ý¿âÁ´½ÓÎļþ
        private static string sqlcon = "server=.;database=myschool;uid=sa;pwd=sa";
        public static SqlConnection connection = new SqlConnection(sqlcon ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ