使用ADO+MySQL時經常出現的錯誤分析及總結

環境: Windows XP SP2 、Delphi 7、MyODBC 3.51

問題:在ODBC中配置MySQL數據源(如Hydro)完全正常,但是在D7中

1,使用ADOConnection有問題。在配置其ConnectionString時,如果選擇了數據源Hydro,在初始數據庫下拉框中也能夠看到可選的數據庫,但是如果選中每個數據庫後,按“測試”按鈕無法成功!可是如果不選具體數據庫就可以測試通過。

原因不明。

解決方案:在ADOConnection的DefaultDatabase中填入初始數據庫。

2,使用ADOQuery時,明明數據表hs_Goal有數據(可以從SQLYog或phpMyAdmin中看到),但是哪怕用

       select * from hs_Goal

       也無法在DBGrid中看到任何數據或者乾脆提示“數據提供程序或其他服務返回E_FAIL狀態”。

原因:hs_Goal中的DateTime類型的字段數據值有問題!默認值爲 0000-00-00 00:00:00 ,ADO是不認這個的!

解決方案:修改所有不合法的DateTime。比如我在一個程序中就將“2000-00-00 00:00:00”改爲“2000-01-01 00:00:00”,最好在表結構中爲DateTime類型的字段設定一個合法的默認值。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章