由于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,故问题较多。