რეკომენდაციები. როდესაც პროცედურა პირველად შედგენილია ან ხელახლა კომპილირებულია, პროცედურის შეკითხვის გეგმა ოპტიმიზირებულია მონაცემთა ბაზის და მისი ობიექტების ამჟამინდელი მდგომარეობისთვის. … კიდევ ერთი მიზეზი, რომ აიძულოთ პროცედურა ხელახლა კომპილაციისთვის, არის პროცედურების კომპილაციის "პარამეტრის ამოსუნთქვის" ქცევის საწინააღმდეგოდ..
შენახული პროცედურების თავიდან აცილება?
შენახული პროცედურები აწინაურებს ცუდი განვითარების პრაქტიკებს, კერძოდ, ისინი მოითხოვენ თქვენ დაარღვიოთ DRY (არ გაიმეოროთ), რადგან თქვენ უნდა აკრიფოთ ველების სია თქვენს მონაცემთა ბაზის ცხრილი ნახევარ ათჯერ ან მეტჯერ მაინც. ეს არის დიდი ტკივილი, თუ თქვენ გჭირდებათ ერთი სვეტის დამატება თქვენი მონაცემთა ბაზის ცხრილში.
რა არის Sp_recompile?
sp_recompile ეძებს ობიექტს მხოლოდ მიმდინარე მონაცემთა ბაზაში. შენახული პროცედურების ან ტრიგერების მიერ გამოყენებული მოთხოვნები და მომხმარებლის მიერ განსაზღვრული ფუნქციები ოპტიმიზირებულია მხოლოდ მათი შედგენისას. … SQL Server ავტომატურად ხელახლა აწყობს შენახულ პროცედურებს, ტრიგელებს და მომხმარებლის მიერ განსაზღვრულ ფუნქციებს, როცა ამის გაკეთება ხელსაყრელია.
რას აკეთებს recompile-ით SQL-ში?
RECOMPILE – განსაზღვრავს, რომ მოთხოვნის შესრულების შემდეგ, ქეშში შენახული მისი შეკითხვის შესრულების გეგმა წაიშლება ქეშიდან. როდესაც იგივე მოთხოვნა ხელახლა შესრულდება, ქეშში არ იქნება არსებული გეგმა, ამიტომ მოთხოვნა ხელახლა უნდა დაკომპლექტდეს.
ეფექტურია შენახული პროცედურები?
ეს მოიცავს ისეთ საკითხებს, როგორიცაა თეთრი სივრცე და ასოების მგრძნობელობა. გაცილებით ნაკლებად სავარაუდოა, რომ შენახული პროცედურის შიგნით მოთხოვნა შეიცვლება კოდში ჩადებულ მოთხოვნასთან შედარებით. … ამის გამო, შენახული პროცედურა შეიძლება ფაქტობრივად უფრო სწრაფად შესრულდეს, რადგან მან შეძლო ქეშირებული გეგმის ხელახლა გამოყენება.