環境: 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類型的字段設定一個合法的默認值。