คำแนะนำ. เมื่อมีการคอมไพล์โพรซีเดอร์เป็นครั้งแรกหรือคอมไพล์ใหม่ แผนการสอบถามของโพรซีเดอร์จะถูกปรับให้เหมาะสมสำหรับสถานะปัจจุบันของฐานข้อมูลและอ็อบเจ็กต์ … อีกเหตุผลหนึ่งในการบังคับให้กระบวนงานคอมไพล์ใหม่คือ เพื่อต่อต้านพฤติกรรม "การดมกลิ่นพารามิเตอร์" ของการรวบรวมขั้นตอน.
ควรหลีกเลี่ยงขั้นตอนการจัดเก็บหรือไม่
ขั้นตอนการจัดเก็บ ส่งเสริมแนวทางการพัฒนาที่ไม่ดี โดยเฉพาะอย่างยิ่งพวกเขาต้องการให้คุณละเมิด DRY (อย่าทำซ้ำตัวเอง) เนื่องจากคุณต้องพิมพ์รายการฟิลด์ในของคุณ ตารางฐานข้อมูลครึ่งโหลหรือมากกว่าอย่างน้อย นี่เป็นความเจ็บปวดอย่างมากหากคุณต้องการเพิ่มคอลัมน์เดียวลงในตารางฐานข้อมูลของคุณ
Sp_recompile คืออะไร
sp_recompile ค้นหาวัตถุในฐานข้อมูลปัจจุบันเท่านั้น คิวรีที่ใช้โดยกระบวนงานที่เก็บไว้ หรือทริกเกอร์ และฟังก์ชันที่ผู้ใช้กำหนดเองจะได้รับการปรับให้เหมาะสมเฉพาะเมื่อมีการคอมไพล์เท่านั้น … SQL Server จะคอมไพล์กระบวนงานที่เก็บไว้ ทริกเกอร์ และฟังก์ชันที่ผู้ใช้กำหนดใหม่โดยอัตโนมัติเมื่อมีประโยชน์ในการทำเช่นนี้
การคอมไพล์ซ้ำใน SQL ทำอะไร
RECOMPILE – ระบุ ว่าหลังจากดำเนินการสืบค้นแล้ว แผนการดำเนินการสืบค้นที่เก็บไว้ในแคชจะถูกลบออกจากแคช เมื่อดำเนินการค้นหาเดียวกันอีกครั้ง จะไม่มีแผนอยู่ในแคช ดังนั้นการสืบค้นจะต้องถูกคอมไพล์ใหม่
ขั้นตอนการจัดเก็บมีประสิทธิภาพหรือไม่
รวมถึงสิ่งต่างๆ เช่น พื้นที่สีขาวและตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ มีโอกาสน้อยมากที่คิวรีภายในกระบวนงานที่เก็บไว้จะเปลี่ยนแปลงเมื่อเปรียบเทียบกับคิวรีที่ฝังอยู่ในโค้ด … ด้วยเหตุนี้ กระบวนงานที่เก็บไว้ อาจดำเนินการเร็วกว่าจริง เพราะสามารถนำแผนแคชมาใช้ซ้ำได้