日期:2013-03-08  浏览次数:20485 次

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