由於需要測試數據庫的連通性,測試項目使用了“方便”的ACCESS來作為後台數據庫,但由於它太“方便”了,以致於半天的時間都葬送在了它隱藏的關鍵字上...
項目使用了NHibernate來作為數據庫中間層,並使用NUnit進行單元測試。可當我配置好所有模型類及配置文件之後,測試環境竟然拋出了這個錯誤:
NHibernate.HibernateException : 字段定義語法錯誤。
----> System.Data.OleDb.OleDbException : 字段定義語法錯誤。
遂上網搜索,初步判斷為ACCESS關鍵字沖突,由於以前的項目由於數據庫關鍵字沖突出現過此類問題,所以模型設計過程中已經注意並避開了它,但是,貌似有漏網之魚,於是又搜出ACCESS的關鍵字列表,一個字段一個字段對比,未發現任何沖突。
無奈中只能拿出最後一招,一個字段一個字段的進行修改,最後在N個小時之後,發現了一個關鍵字列表中不存在的關鍵字:Position
至於結論,我不想再對ACCESS做什麼評論,只能說,我用ACCESS我活該...