怎么转换Microsoft access 旧版本数据库?

怎么转换Microsoft access 旧版本数据库?,第1张

VB6 或者 VBA6 将 ACCESS97 格式的数据库转换为ACCESS2000 2003 2007格式,没有完美转换的办法,但是有两种替代方法。

1、在VB6 VBA中用 SHELL 调用 msaccess.exe 的命令行来转换。

/convert 目标数据库 将早期版本的 Access 数据库或 Access 项目转换为 Access 2007 文件格式,重命名这一新文件,然后关闭 Access。在使用 /convert 开关之前必须指定源数据库。

当然,上述转换的前提是在当前电脑上安装了最新版本的 OFFICE ACCESS 软件。

2、在VB6 VBA中直接用 ADOX DAO 新建一个高版本的数据库,然后用 ADOX DAO 读取97格式中所有表的数据结构及数据本身,然后编程添加到高版本中。当然,比如宏、窗体等就不一定能转换成功了。而且这种转换方法需要编写的代码量极大。

3、可以用DAO的CompactDatabase方法、JRO的CompactDatabase方法试验一下,但是都不够完美。

由于SQL2000里面没有"自动编号",所以你的以"自动编号"设置的字段都会变成非空的字段,这就必须手工修改这些字段,并把他的"标示"选择"是",种子为"1",增量为"1",

2,另外,ACCESS2000转换成SQL2000后,原来属性为"是/否"的字段将被转换成非空的"bit",这时候你必须修改成自己想要的属性了

ACCESS转SQL

SERVER中的一些经验

1.ACCESS的数据库中的自动编号类型在转化时,sql

server并没有将它设为自动编号型,我们需在SQL创建语句中加上identity,表示自动编号!

2.转化时,跟日期有关的字段,SQL

SERVER默认为smalldatetime型,我们最好将它变为datetime型,因为datetime型的范围比smalldatetime型大。我遇见这种情况,用smalldatetime型时,转化失败,而用datetime型时,转化成功。

3.对此两种数据库进行 *** 作的sql语句不全相同,例如:在对ACCESS数据库进行删除纪录时用:"delete

*

from

user

where

id=10",而对SQL

SERVER数据库进行删除是用:"delete

user

where

id=10".

4.日期函数不相同,在对ACCESS数据库处理中,可用date()、time()等函数,但对

SQL

SERVER数据库处理中,只能用datediff,dateadd等函数,而不能用date()、time()等函数。

5.在对ACCESS数据库处理中,sql语句中直接可以用一些VB的函数,像cstr()函数,而对SQL

SERVER数据库处理中,却不能用。

1、必须先安装Microsoft

Office

Access

2003,和SQL

Server2000。2、把旧的动网数据库备份,备份完成后,用Access

2003打开动网旧数据库,在打开时会出现一个警告,不要理会它(安全警告),按打开键,打开后按工具栏——数据库实用工具——转换数据库——转换为2002-2003格式,把数据库转换成2003格式。

2、转换完成后再用Access

2003打开,打开后按工具栏——数据库实用工具——升迁向导——新建数据库——填写SQL数据库登陆名称、密码和要新建的动网数据库(准备转成新的动网数据库),按下一步,按“

》”键,再按下一步,选取所有选项,再按下一步,选择“不对应用程序作任何改动”,再按完成。

3、打开SQL企业管理器——数据库吹礁詹判陆ǖ亩菘饬税桑慊髡飧鍪菘庖幌拢缓笤诠ぞ呃浮?/FONT>SQL脚本——常规——全部显示——编写全部对象脚本——确定(记住存放的位置)。

4、用记事本打开刚才生成的SQL脚本,在编辑栏——替换——查找内容为“smalldatetime”替换为“datetime”——替换全部;完成后再在编辑栏——替换——查找内容为“nvarchar”替换为“varcha”——替换全部,完成后保存退出。

5、打开SQL企业管理器——数据库——点击这个数据库一下新建的动网数据库,然后在工具栏——SQL查询分析器——文件——打开——“刚才生成的SQL脚本”——查询——执行,然后关闭窗口。

6、再回到SQL企业管理器——数据库——点击这个数据库一下新建的动网数据库,然后打开工具栏——数据库转换服务——导入数据——下一步——数据源“Microsoft

Access”文件名“为旧的动网数据库”——下一步——再下一步——从源数据复制表和视图——下一步——全选——下一步——立即运行——下一步——完成。

7、修改动网文件夹两个文件conn.asp和inc\const.asp。

SQL时间函数是getdata()

参考资料:网上整理,因为当初我也碰到这问题


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10062441.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存