SQL»ù±¾Ê¹ÓúʹúÂëÓÅ»¯
EXECºÍsp_executesqlµÄÇø±ð£¿
DBCC FREEPROCCACHE --¡·Çå¿Õ»º´æÖеÄÖ´Ðмƻ®
SELECT cacheobjtype,objtype,usecounts,sql from sys.syscacheobjects WHERE sql NOT LIKE '%cach%' AND sql NOT LIKE '%sys.%' --¡·²éÕÒ¶ÔÓ¦µÄ»º´æÖеĶÔÓ¦¼Æ»®
SQL ServerΪÿһ¸öµÄ²éѯ×Ö·û´®´´½¨ÐµÄÖ´Ðмƻ®£¬¼´Ê¹²éѯģʽÏàͬҲÊÇÕâÑù
EXEC³ýÁ˲»Ö§³Ö¶¯Ì¬Åú´¦ÀíÖеÄÊäÈë²ÎÊýÍ⣬ËûÒ²²»Ö§³ÖÊä³ö²ÎÊý
Ó÷¨£º
Exec('select * from CustInfo')
Exec sp_executesql N'select * from CustInfo'
declare @paraName varchar(20)
set @paraName='CustName'
Exec('select '+@paraName+' from CustInfo')--¼ÓºÅǰºó¼ÓÉϿոñ
Èç¹ûÄãÒª°ÑÊä³ö·µ»Ø¸øµ÷ÓÃÅú´¦ÀíÖеıäÁ¿£º
DECLARE @sql NVARCHAR(MAX),@RecordCount INT
SET @sql = 'SELECT COUNT(ORDERID) from Orders';
CREATE TABLE #T(TID INT);
INSERT INTO #T EXEC(@sql);
SET @RecordCount = (SELECT TID from #T)
SELECT @RecordCount
DROP TABLE #T
sp_executesqlÃüÁîÔÚSQL ServerÖÐÒýÈëµÄ±ÈEXECÃüÁîÍíһЩ£¬ËüÖ÷ÒªÎªÖØÓÃÖ´Ðмƻ®Ìṩ¸üºÃµÄÖ§³Ö¡£
ËüµÄ¹¹³É°üÀ¨£º´úÂë¿ì£¬²ÎÊýÉùÃ÷²¿·Ö£¬²ÎÊý¸³Öµ²¿·Ö
EXEC sp_executesql
@stmt = <statement>,--ÀàËÆ´æ´¢¹ý³ÌÖ÷Ìå
@params = <params>, --ÀàËÆ´æ´¢¹ý³Ì²ÎÊý²¿·Ö
<params assignment> --ÀàËÆ´æ´¢¹ý³Ìµ÷ÓÃ
@stmt²ÎÊýÊÇÊäÈëµÄ¶¯Ì¬Åú´¦Àí£¬Ëü¿ÉÒÔÒýÈëÊäÈë²ÎÊý»òÊä³ö²ÎÊý£¬ºÍ´æ´¢¹ý³ÌµÄÖ÷ÌåÓï¾äÒ»Ñù£¬Ö»²»¹ýËüÊǶ¯Ì¬µÄ£¬¶ø´æ´¢¹ý³ÌÊǾ²Ì¬µÄ£¬²»¹ýÄãÒ²¿ÉÒÔÔÚ´æ´¢¹ý³ÌÖÐʹÓÃsp_executesql;
@params²ÎÊýÓ붨ÒåÊäÈë/Êä³ö²ÎÊýµÄ´æ´¢¹ý³ÌÍ·ÀàËÆ£¬Êµ¼ÊÉϺʹ洢¹ý³ÌÍ·µÄÓï·¨ÍêȫһÑù£»
@<params assignment> Óëµ÷Óô洢¹ý³ÌµÄEXEC²¿·ÖÀàËÆ¡£
Ó÷¨£º
declare @paraName varchar(20)
set @paraName='CustName'
declare @temp nvarchar(1000)
set @temp='select ' +@paraName+ ' from CustInfo'
Exec(@temp)
exec sp_executesql @temp--ÒòΪ sp_executesqlÖ»ÄÜÖ´ÐеÄÀàÐÍΪntext/nchar/nvarchar£¬ËùÒÔ@tempÐèÒª´Óvarchar¸ÄΪnvarchar
DECLARE @TableName VARCHAR(50),@sql NVARCHAR(MAX),@OrderID INT;
SET @TableName = 'CustInfo ';
SET @OrderID = 10;
SET @sql = 'SELECT * from '+QUOTENAME(@TableName) + ' WHER
Ïà¹ØÎĵµ£º
ϵͳ»·¾³£ºWindows 7
Èí¼þ»·¾³£ºVisual C++ 2008 SP1 +SQL Server 2005
±¾´ÎÄ¿µÄ£º±àдһ¸öº½¿Õ¹ÜÀíϵͳ
ÕâÊÇÊý¾Ý¿â¿Î³ÌÉè¼ÆµÄ³É¹û£¬ËäÈ»³É¼¨²»¼Ñ£¬µ«ÊÇ×÷ΪÎÒÓÃVC++ ÒÔÀ´±àдµÄ×î´ó³ÌÐò»¹ÊÇ´«µ½ÍøÉÏ£¬ÒÔ¹©²Î¿¼¡£ÓÃVC++ ×öÊý¾Ý¿âÉè¼Æ²¢²»ÈÝÒ×£¬µ«Ò²²»ÊDz»¿ÉÄÜ¡£ÒÔÏÂÊÇÎҵijÌÐò½çÃæ£¬ºóÃæ ......
¹ØÓÚ±¾Îı¾ÎÄËùÃè»æµÄ¹¦Äܺͼƻ®ÊÇÏÂÒ»°æ±¾ SQL Server µÄ¿ª·¢·½Ïò¡£ËüÃDz¢·Ç±¾²úÆ·µÄ˵Ã÷Ê飬ÈçÓиü¸Ä£¬Ë¡²»ÁíÐÐ֪ͨ¡£¶ÔÓÚ×îÖÕ²úÆ·ÊÇ·ñ¾ßÓÐÕâЩ¹¦Äܲ»×öÈκÎÃ÷ʾ»ò°µÊ¾µÄ±£Ö¤¡£¶ÔÓÚijЩ¹¦ÄÜ£¬±¾ÎļÙÉè¶ÁÕßÊìϤ SQL Server 2000 ¹¦ÄܺͷþÎñ¡£Óйر³¾°ÐÅÏ¢£¬Çë·ÃÎÊSQL Server ÍøÕ¾»ò SQL Server 2000 ×ÊÔ´¹¤¾ß°ü¡£Õâ²¢²»Ê ......
ת×Ô£ºhttp://hi.baidu.com/sonichu/blog/item/a494c4ea276f12dad539c9a8.html
½¨Á¢Ò»¸ö Web Ó¦Ó㬷ÖÒ³ä¯ÀÀ¹¦Äܱز»¿ÉÉÙ¡£Õâ¸öÎÊÌâÊÇÊý¾Ý¿â´¦ÀíÖÐÊ®·Ö³£¼ûµÄÎÊÌâ¡£¾µäµÄÊý¾Ý·ÖÒ³·½·¨ÊÇ:ADO ¼Í¼¼¯·ÖÒ³·¨£¬Ò²¾ÍÊÇÀûÓÃADO×Ô´øµÄ·ÖÒ³¹¦ÄÜ£¨ÀûÓÃÓα꣩À´ÊµÏÖ·ÖÒ³¡£µ«ÕâÖÖ·ÖÒ³·½·¨½öÊÊÓÃÓÚ½ÏСÊý¾ÝÁ¿µÄÇéÐΣ¬ÒòΪÓα걾ÉíÓÐȱ ......
ͨ¹ý“Ìí¼Óɾ³ý³ÌÐò”Àï²¢²»ÄÜÍêȫɾ³ýSQlL server¡£
ͨ¹ýÏÂÃæµÄÃüÁÍêÈ«·´°²×°SQL server 2005
d:\Setup.exe
/
qb REMOVE
=ALL
INSTANCENAME
=<
InstanceName
>
ĬÈÏʵÀýµÄÃû×ÖÊÇMSSQLSERVER
ÒýÓÃÎÄÕµØÖ·£ºhttp://www.cnblogs.com/jvstudio/archive/2010/01/17/1650089.ht ......
1.ORACLE²ÉÓÃ×Ô϶øÉϵÄ˳Ðò½âÎöWHERE×Ó¾ä,¸ù¾ÝÕâ¸öÔÀí,±íÖ®¼äµÄÁ¬½Ó±ØÐëдÔÚÆäËûWHEREÌõ¼þ֮ǰ, ÄÇЩ¿ÉÒÔ¹ýÂ˵ô×î´óÊýÁ¿¼Ç¼µÄÌõ¼þ±ØÐëдÔÚWHERE×Ó¾äµÄĩβ.
(µÍЧ)
SELECT … from EMP E WHERE SAL > 50000 AND JOB = ‘MANAGER’ AND 25 < (SELECT COUNT(*) from EMP WHERE MGR=E. ......