由于access97(或更早的版本)無法開啟以access2000制作的檔案,故如同以往歷次改版,若要完全發揮access2000之功能,讀者須考慮將舊版數據庫轉換至2000,請見以下說明:
一、共用數據表
不論數據庫為何種版本,數據表皆是可共用的資源,如access97數據庫可連結來自access2000數據庫中的數據表,所以若環境內不是每一位使用者皆已升級至access2000,又為保持數據正確,可將數據表做為共用。
二、access2000轉換至access97
這是access歷次改版中,第一次提供新版轉舊版的功能,讀者可在開啟數據庫后,使用〖工具〗->〖數據庫工具〗->〖轉換數據庫〗->〖轉換access97文件格式〗。但轉換后的數據庫,不保證可在access97中一切正常,因為數據庫在2000中若使用了97版不支持的新功能,將會在轉換后發生錯誤。
三、不支持的程序庫
若讀者轉換access7.0的數據庫,且在vba中使用dao處理數據庫,則會在轉換時發生錯誤,因為access2000不支持dao2.5/3.x的程序庫。
解決方法是,在轉換后開始visual basic編程器,使用〖工具〗->〖設定引用項目〗選項,在此清除遺漏的dao2.5/3.x程序庫,再引用dao3.60程序庫。
四、程序碼
在程序碼部分,若轉換access2.0數據庫,且在數據庫中以declare陳述式宣告使用api函數,則所有此類函數在轉換后均須重新宣告,仍是使用declare陳述式,但每一函數有新的語法。因為access2.0是使用win16 api,而目前者是win32 api。
此外,在access2000的vba中,有些屬性及函數傳回值有較嚴格的分類,通常是舊版傳回值類型為variant者轉換為字串,故有可能在執行時發生錯誤,讀者可在轉換完成后,開啟visual basic編程器,在此使用〖偵錯〗->〖編譯〗選項,查看有無錯誤,最常發生的錯誤是〖類型不符〗或〖null的使用不正確〗等,此時可檢查處理的屬性或函數傳回值是否正確。
說明:
以上僅列出較常見或可能發生的錯誤,一般而言,access2000與access97之差異不大,將97轉換至2000應無太大問題,問題較多的是access2.0及7.0版,因為這兩個版本不是32位版本,加上access2.0不支持vba,故問題較多。
新聞熱點
疑難解答