一、在Delphi中使用SQL語言
由於SQL語言使用方便、功能豐富,語言簡潔易學,深得廣大數據庫開發人員的喜愛。在Delphi中,通過使用Query、DataSource等控件,執行SQL代碼是非常輕易實現的,但是在涉及日期查詢時會碰到一個很輕易忽略的問題。假設使用的數據表為orders.db,其中有一個日期型字段為saledate, 瀏覽數據表,saledate的格式顯示為:yyyy-mm-dd(年-月-日)。 SQL代碼為: select*fromorderswheresaledate>1998-03-31 可是執行代碼時總是顯示"typemismatcheXPression"的錯誤。筆者以為是數據庫引擎(BDE) 安裝不完全所致,遂重新安裝Delphi,結果發現問題依然存在。在反複查閱了有關SQL資料及聯機幫助,最後發現BDE只支持美國的日期格式。其格式為:mm/dd/yyyy(月/日/年)。將SQL 代碼改為: select*fromorderswheresaledate>03/31/1998 再次執行代碼時,問題排除。為了使查詢和進行其它數據操作時的日期格式一致,建議在控制面板的區域設置項中將區域置為:英語(美國)。
二、在Delphi中調用Word文檔
OLE是一種答應不同的應用程序在一起協同工作並共享數據的方法。通過位於ComponentPalette的System頁面上的OLEContainer部件,可以將一個Word文檔鏈接或嵌入到Delphi程序中。筆者在應用程序調試完畢後,將應用程序及Word97 安裝到用戶電腦上運行,發現調用Word文檔時,出現"鏈接的源目標已更改"的錯誤信息。仔細檢查,程序代碼無誤,反複調試運行,發現有的Word文檔可以被正常調用,這部分文檔是Word97 格式,而不能被調用的文檔是用戶原來的Word6.0格式的文檔,於是將這部分文檔轉換為Word97 格式,再次運行,程序正常。由此可見,在編寫OLE應用程序時,要注重共享數據的格式問題,否則浪費不必要的時間和精力。