在 DB2 嵌入式 C 專案中,為保持測試資料完整與開發人員資料一致、減輕 DB Server 壓力,安排每兩人共用一個 DB 實例。當開發人員 A 編譯執行後,B 也編譯執行,A 即報 SQL0818N A timestamp conflict occurred。A 重新預編譯後恢復,但 B 接著報同樣錯誤。初以為 DB2 或客戶端故障,重裝 Quest Central、DB2 均無效。

DB2 使用一致性標記,將修改後的原始檔與套件緊密連結。預編譯時會在修改後的原始檔內嵌入一致性標記,並在 DB2 系統目錄表中儲存相同值。應用程式每次請求皆攜帶此標記,與目錄表值比對。若兩值不符,且載入模組的時間戳與一致性標記不符,即拋出 SQLCODE -818。
多人共用同一實例且各自編譯,導致套件與原始檔的時間戳不同步。解決方案:各開發人員使用獨立實例,或嚴格協調編譯順序並統一重新綁定套件。