2
การอัพเดตดัชนีเซิร์ฟเวอร์ SQL หยุดชะงัก
ฉันมี 2 แบบสอบถามซึ่งเมื่อทำงานในเวลาเดียวกันจะทำให้เกิดการหยุดชะงัก แบบสอบถาม 1 - อัปเดตคอลัมน์ซึ่งรวมอยู่ในดัชนี (ดัชนี 1): update table1 set column1 = value1 where id = @Id ใช้ X-Lock บน table1 จากนั้นลอง X-Lock บน index1 แบบสอบถาม 2: select columnx, columny, etc from table1 where {some condition} นำ S-Lock ไปที่ index1 จากนั้นลอง S-Lock บน table1 มีวิธีการป้องกันการหยุดชะงักในขณะที่รักษาข้อความค้นหาเดียวกันหรือไม่ ตัวอย่างเช่นฉันสามารถใช้ X-Lock ในดัชนีในธุรกรรมการปรับปรุงก่อนการปรับปรุงเพื่อให้แน่ใจว่าการเข้าถึงตารางและดัชนีอยู่ในลำดับเดียวกัน …