Access怎么转成SQL数据库

59次阅读
没有评论

共计 2498 个字符,预计需要花费 7 分钟才能阅读完成。

本篇内容介绍了“Access 怎么转成 SQL 数据库”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让丸趣 TV 小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

转换的方法

1、打开“控制面板”下“管理工具”中的“数据库源”。

2、按”添加“添加一个新的数据源,在选择栏里选“Driver do microsoft Access (*.mdb)”,完成后将出现一个框,在“数据库源”里面输入你想写的名称,我取名叫“ABC”,说明不需要填,接着,按下面的选择,寻找你的数据库地址和选中(注意,请先备份自己的 ACCESS 数据库),然后确定。数据源在这里建好了,剩下转换了。

3、打开 SQL2000 企业管理器,进入数据库,新建一个空的数据库“ABC”。

4、选择新建立的数据库,按鼠标右键,选择“所有任务”下“导入数据”,按“下一步”继续。

5、在数据库源下拉但中选择”Driver do microsoft Access(*.mdb)“,在”用户 / 系统 DSN“中,选种你刚才添加的”ABC“,按”下一步“。

6、“目的”不需要修改,选择服务器(一般下为自己的本机 local,也可以选择服务器地址或者局域网地址,确定你的权限是否可以操作,),使用 WINDOWS 身份验证指用自己的系统管理员身份操作,使用 SQL 身份操作验证可以用于网站的操作,推荐用后者。

7、选上使用 SQL 身份操作验证后,填写你的用户名和密码,我自己选择的是系统默认号码 sa,****,数据库选择刚新建的 ABC,按下一步。

8、这一步的两个单项选择,从数据源复制表和视图与用一条查询指令指定要传输的数据,选择前者,按下一步继续。

9、这里将出现你自己 ACCESS 数据库的表,按全选后,下一步。

10、DTS 导入 / 导出向导,看立即运行被选中按下一步。

11、按完成继续。

12、这个步骤你将看到你的数据被导入 SQL2000 里面,当出现已经成功把 XXX 个表导入到数据库的字样,而且所有的表前面都有绿色的勾,就表示成功导入所有数据,如果中途出现问题或者表前面有红色的叉的话,说明该表没有成功导入,这时就要回去查看自己的操作是否正确了。

最近又在升级一个程序,使其支持多数据库。
原来的程序数据库为 SQL Server,所以使用 SQL Server 的“导入和导出数据”功能将一个 SQL Server 数据库转换成了 Access 数据库,但其中发现了一些问题,但也找到了解决方案,一并记录于此:

1、转换程序会将 SQL Server 的视图转换成表,而不是 Access 的查询;
2、在为字段设置默认值为空字符的时候,SQL Server 用”,而 Access 用”;
3、Access 中没有 GetDate() 函数,应该使用 Now() 函数代替;
4、Access 没有 SQL Server 用来获取客户端机器名的 host_name() 函数;
5、Access 中没有 Case When Then 语句,但可以用 IIF() 函数模拟实现功能;
6、发现:Access 使用的是 Visual Basic 的语言结构和函数;
7、转换程序会正确转换 SQL Server 字段的 IS NULL 属性;
8、Access 也支持多字段的索引,只是设置方法有点特别(参见帮助);
9、SQL Server 中 bit 型的 1、0 值,在 Access 中为 True 和 False;
10、在 Access 中使用多个 LEFT JOIN 这样的语句时,必须用括号做相关的界定;
11、Access 的 SQL 没有注释语句,SQL Server 的 /**/ 无法通用;
12、一条 Insert 语句在 Access 查询中正常运行,但在程序中出现“Insert Into 语句的语法错误”,后来发现原来是语句中的一个列名是 Access 的关键字(用[]界定可解决问题),但奇怪的是将该语句放置到 Access 的查询中执行却不会出错。

需要对转换后的 Access 数据库进行以下项目的检查,以确保与 SQL Server 一致:

1、主键。转换后的 Access 数据库都没有主键,需自己设置;
2、自增字段。转换程序会将 SQL Server 的自增字段转换为数字型,需手动修改为 Access 的“自动编号”类型;
3、默认值。转换程序不会转换 SQL Server 中设置的默认值,需手动设置;
4、bigint 型字段。转换程序会将 SQL Server 的 bigint 转换为小数,须手动调整为 Access 的整型或长整型;
5、索引。转换程序不会转换索引,需手动在 Access 中建立索引。

在 Delphi 下,想让程序同时支持 Access 及 SQL Server,需注意以下方面:

1、在 Access 中使用 SELECT * FROM Books WHERE RegDate =‘2007-5-1′ 是会出现“标准表达式中数据类型不匹配”这样的错误的(RegDate 是日期型),必须使用 SELECT * FROM Books WHERE RegDate = #2007-5-1# 或 SELECT * FROM Books WHERE RegDate = CDate(2007-5-1′);
但在 Access 中,Insert、delete 和 update 中使用单引号界定日期却是可以正常执行的。
2、尽量不要使用 SQL Server 的 bigint 类型,尤其该字段是自增的情况下;
3、Access 的 varchar(文本)型最大只有 255,所以如果一个文本型字段大于 255 时,最好定义成备注型(Access 中)或 text 型(SQL Server 中);
4、在 Access 中一般会出现如下错误:不正常地定义参数对象。提供了不一致或不完整的信息。将相应 Query 的 ParamCheck 设为 False 即可;
5、Access 中的逻辑值在库中为 - 1 和 0, 而 SQL Server 中为 1 和 0, 所以写 BoolField = 1 这样的语句有兼容性问题,应该改为 BoolField 0;
6、在 Access 中有主键的 Query 才可更新,而 SQL Server 无此要求。

“Access 怎么转成 SQL 数据库”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注丸趣 TV 网站,丸趣 TV 小编将为大家输出更多高质量的实用文章!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-03发表,共计2498字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)