[DB2] SQL2314W Some statistics are in an inconsistent state. (SQLSTATE=01650)

ระหว่างน้องทดสอบ Script ปรากฏว่าเจอ Error Message ว่า

SQL2314W Some statistics are in an inconsistent state. The newly collected “TABLE” statistics are inconsistent with the existing “INDEX” statistics.(SQLSTATE=01650)

แล้วทำไม statistics มันไม่สอดคล้องหละ (inconsistent)

  • มีการทำ Operation ประเภทยัด(BULK) ไม่ว่าเป็นการ INSERT หรือ DELETE หลายรายการ แต่ตัว  statistics มันปรับตัวไม่ทัน เอาง่ายๆ คืือ ว่าไม่ได้ Update นั่นเอง เลยทำใน Statistics ของ Table กับ ของ Index มันไม่สัมพันธ์กันครับ ระบบเลยขึ้นแจ้งเตือนครับ

แก้ไขอย่างไร จริงๆ คำสั่งที่เอามาใช้แก้ มีหลายแบบ ดังนี้ีครับ

  • แบบที่ 1:
CALL SYSPROC.ADMIN_CMD('RUNSTATS ON TABLE INVEST.COMPANY WITH DISTRIBUTION AND DETAILED INDEXES ALL')
  • แบบที่ 2:
CALL SYSPROC.ADMIN_CMD('RUNSTATS ON TABLE INVEST.COMPANY AND INDEXES ALL');

หมายเหตุ: INVEST = DB SCHEMA และ COMPANY = ชื่อ TABLE

 


Discover more from naiwaen@DebuggingSoft

Subscribe to get the latest posts sent to your email.