_覓 | 覦覈襦 | 豕蠏手 | 殊螳 | 譯殊碁 |
FrontPage › HardParsing螻SoftParsing
|
|
[edit]
1 蠍磯蓋 #襷 れ螻 螳 貎朱Μ襯 ろる 牛磯伎 企 ろ螻 語瑚?
SELECT e.empno, e.ename, d.deptno FROM scott.emp e, scott.dept d WHERE e.deptno = d.deptno AND e.sal > 3000 Nested Loop 蟆瑚 Sort Merge Join 蟆瑚 覃 Hash Join 蟆瑚? Nested Loop 譟一語企 emp企覿 曙 蟆瑚 覃 dept企覿 曙 蟆瑚? れ朱 曙 蟆瑚? 碁煙り 螳? 螳? 碁煙り る 蟆瑚? 讌 蟆瑚? Sal貉殊 碁煙り 讌 讌 碁煙り る 蟆語 讌 蟆語..
SELECT * FROM Northwind.dbo.Products WHERE CategoryID = 1 SELECT * FROM Northwind.dbo.Products WHERE CategoryID = 4 覓朱 襦襯 襷れ 覃 覿覿 襷り覲 貎朱Μ螳 . 覓朱 螳 螳 貎朱Μ ろ螻 (誤) 蟆 . 伎 螳 蟆曙磯 襦螳 貉危 讌 る . MSSQL Server 襷覃 ろ螻 り . 蠏碁 覲旧″ 貎朱Μ 襦 煙 襯 譴企. 蠏碁覩襦 螳 sp_executesql 襷り覲襯 る 覲旧″ 貎朱Μ朱 誤煙 螳 . 願 る狩伎 覦碁 覲襯 蟆螻 . 朱 貎朱Μ襯 襷る 襷谿螳讌企. sp_executesql 覃 朱 ろ螻 覃覈襴襦 れ 蠍磯蓋碁ゼ 螳豢. 讀, 襷り覲襯 SQL 覓語 襯 覿襴覃 蟯螻 讌 譴覲給 螻 語 .
[edit]
2 # ろ螻 企. 襦襯 ろ螻 れ ろ. 企欧語 襦 cache 蟯 企欧碁ゼ 覈 .
Use NorthWind GO IF object_id('proc_parameter_query') IS NOT NULL DROP PROC proc_parameter_query GO CREATE PROCEDURE proc_parameter_query @CategoryID int, @ProductID int AS BEGIN DECLARE @sql nvarchar(100) SET @sql = N'SELECT * FROM Northwind.dbo.Products ' SET @sql = @sql + N'WHERE CategoryID = @Param1 ' SET @sql = @sql + N'AND ProductID = @Param2' EXEC sp_executesql @sql, N'@Param1 int, @Param2 int', -- 企覿 譟一伎 . -- 一危 襷り覲襯 危伎 . @Param1 = @CategoryID, @Param2 = @ProductID END GO 襦襯 ろ螻, Cache Insert螳 讌 危エ覲伎. 襦 覯 覈襯碁る 襷企 るジ 谿瑚. 襦襯 れ螻 螳 れ ろ.
EXEC proc_parameter_query 1, 1 GO --企 螳 覦蠑語伎 proc_parameter_query 襦襯 ろ 覲伎 --蠏碁Μ螻 ExecContextHit螳 讌 危エ覲伎.. EXEC proc_parameter_query 1, 2 GO -- れ 襦襯 襷 螻...襦襯 覲伎. IF object_id('proc_parameter_query2') IS NOT NULL DROP PROC proc_parameter_query2 GO CREATE PROCEDURE proc_parameter_query2 @a int, @b int AS BEGIN DECLARE @sql nvarchar(100) SET @sql = N'SELECT * FROM Northwind.dbo.Products ' SET @sql = @sql + N'WHERE CategoryID = '+ cast(@a as varchar) + ' ' SET @sql = @sql + N'AND ProductID = ' + cast(@b as varchar) EXEC(@sql) END GO --れ ろ螻 襦 蟯谿 EXEC proc_parameter_query2 1, 3 GO EXEC proc_parameter_query2 1, 4 GO SELECT * FROM Northwind.dbo.Products WHERE CategoryID = 1 AND ProductID = 5 GO SELECT * FROM Northwind.dbo.Products WHERE CategoryID = 1 AND ProductID = 4 GO れ襦 exec() sp_execsql企 蠏碁 SQL企 ExecContextHit 蟆 覲 . 蠏 伎 襷り覲 . MSSQL Server 襷 蟆 襷り覲 ろ螻 り 讌襷 覺るれ 一危 螳襯 覿朱 ろ螻 讌 覈詩. 螳 蟆企襦 ろ螻 襯 讌襷 覲旧″ 貎朱Μ殊襦 ろ螻 襯 讌. 蠏碁覩襦 貎朱Μ襯 燕 蟆 狩 蟆 譬. 螳 覦朱 襦襯 燕讌 襷螻, 螳 襷り覲襯 讌 j鍵 覦. 襷り覲 譟危 蟆 螻螳 .
CREATE PROCEDURE proc_parameter_query3 @a int, @b int AS BEGIN SELECT * FROM Northwind.dbo.Products WHERE CategoryID = @a AND ProductID = @b END GO 襦 レ 襷 れ . 蠏 レ 譴 螳讌 襷るレ 蟆 襷り覲 一危 襷豢一 , 企 覲 襷 る 蟆企.
[edit]
3 Stored Procedure Recompile # 襦 貉危殊 蠍磯 螻, 讌 . 貉危殊 覩碁Μ 貉危朱 蟆 覿螳 伎讌 企. 襷 企 轟危瑚 煙 轟危碁手 覃, 覿覿 煙 蟆願, 朱螳 煙 蟆企. 蠏碁覩襦 煙 蟆 れ 螻, 煙 谿場 碁煙るゼ 蟆 伎 . 蠏碁覩襦 ろ螻 覿襴讌 る, 企 襦 襷る 貉危殊 伎 蟆企. 襷 貉危朱 轟 煙 谿場る 碁煙るゼ 蟆願, 覦襦 れ 煙 谿城る 覩碁Μ 貉危朱 襦襯 蟆企襦 れ 碁煙るゼ 蟆企. 蠏碁覩襦 企 蟆曙一 貉危殊 伎 覦襯 貎朱Μ 語 覿 殊 襷れ 蟆企. 覓朱 企 蟆曙磯 ろ螻 覿襴覃 轟壱 貉危殊 讌 . 貉危殊 覦覯 2螳讌.
-- 襦 伎 CREATE PROC Proc_Name WITH RECOMPILE AS BEGIN END --襦襯 ろ 讌 EXEC Proc_Name WITH RECOMPILE
鏤
|
讌ろ 螳豢 殊 覲企 一企 覓伎 覦蟆 譴 . 豺谿企 危伎. 蠏朱蓋朱 蟲 螻 襯. 蟲郁襯 覓企Μ 豺谿 企 讌豺讌 給. 螻 襴れ 覦蟆 蠍磯ゴ. 覲伎譴 譯 給ゃ (豺朱Υ讌觚) |