网络编程
位置:首页>> 网络编程>> 数据库>> ACCESS转SQL Server2000需要注意的问题(3)

ACCESS转SQL Server2000需要注意的问题(3)

  发布时间:2007-11-18 15:25:00 

标签:ACCESS,SQL,Server,转换

五、相关语句问题

自动增加字段需要重写。在access中经常使用的自动编号字段,导入到mssql后,他并不是自增型的int,需要手工设置,把导入后的自动编号字段的标识的“否”改为“是”,“种子”和“递增量”都为“1”,才能成为自动编号

所有的默认值都丢失了。主要是数字类型和日期类型

所有now(),time(),date()要改成getdate()

所有datediff('d',time1,time2)要改成datediff(day,time1,time2)

所有datediff('ww',time1,time2)要改成datediff(week,time1,time2)

所有datediff('d',time1,time2)要改成datediff(day,time1,time2)

在mssqlserver中,有许多保留字,在access中是没有的,当你把数据导入到mssql的时候,问题就出来了。mssql在导入的时候,会自动给这些字段(包括数据库中的表名)加上“[字段名]”,因此,你必须修改你的脚本,把相应的字段名字(或者表名字)加上中括号,或改变字段名字为不是mssql的保留字

在用access关于时间的使用,大家喜欢使用“select*fromaaaawhiletime="&now()”这样的sql语句,然而,在mssql中没有“now()”这个函数,而是使用“getdate()”,所以,所有的sql语句中的“now()”必须换成“getdate()”。

日期函数不相同,在对ACCESS数据库处理中,可用date()、time()等函数,但对
SQLSERVER数据库处理中,只能用datediff,dateadd等函数,而不能用date()、time()等函数。

转化时,跟日期有关的字段,SQLSERVER默认为smalldatetime型,我们最好将它变为datetime型。

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com