5
ตรวจจับการเปลี่ยนแปลงในตาราง SQL Server
ในแอปพลิเคชันของฉันด้วยฐานข้อมูลที่รันบน SQL Server 2012 ฉันมีงาน (ภารกิจตามกำหนดเวลา) ที่ดำเนินการแบบสอบถามที่มีราคาแพงเป็นระยะและเขียนผลลัพธ์ลงในตารางที่แอปพลิเคชันสามารถสอบถามได้ในภายหลัง โดยหลักการแล้วฉันต้องการเรียกใช้คิวรีที่มีราคาแพงเฉพาะเมื่อมีบางสิ่งเปลี่ยนแปลงเนื่องจากเคียวรีถูกเรียกใช้งานครั้งล่าสุด เนื่องจากตารางต้นฉบับมีขนาดใหญ่มากฉันจึงไม่สามารถเลือกการตรวจสอบกับคอลัมน์ผู้สมัครทั้งหมดหรืออะไรทำนองนั้น ฉันมีความคิดต่อไปนี้: เขียนการประทับเวลาที่มีการเปลี่ยนแปลงครั้งล่าสุดอย่างชัดเจนการตั้งค่าสถานะ "ต้องเป็นข้อความค้นหา" หรือสิ่งนี้ในตารางติดตามทุกครั้งที่ฉันเปลี่ยนบางสิ่งในตารางต้นฉบับ ใช้ทริกเกอร์ในการทำเช่นเดียวกัน อย่างไรก็ตามฉันอยากจะรู้ว่ามีวิธีที่มีน้ำหนักเบาในการตรวจสอบการเปลี่ยนแปลงในตารางโดยที่ฉันไม่ได้ติดตามการเขียนอย่างชัดเจนหรือไม่ ยกตัวอย่างเช่นฉันจะได้รับ "ปัจจุบัน" ROWVERSIONของตารางหรืออะไรแบบนั้น?