Access 转换到 SQL Server,并不是说改一下数据库连接就可以了的。一般还需要注意以下一些问题。
标识
转换时要注意选择按标识插入;转换后要注意到 SQL Server 中用设计表来将相关字段改为标识,新插入的记录会自动识别到标识 ID 已经排到多少了。
是/否 -> bit
Access 中有“是/否”类型来存储布尔,SQL Server 中是 bit。Access 中插入查询“是/否”类型时用的是 True、False,比如:where passed=True;而 SQL Server 中用的是 1、0,比如:where passed=1,但要注意 rs("passed") 结果仍然是 True、False。
时间日期 -> datetime
插入、更新时是一样的,不一样的是查询:Access 中是 where inputTime > #2009-07-14 06:48:26#;SQL Server 中是 where inputTime>'2009-07-14 06:48:26'。
Now() -> getdate()
Access 中表示当前时间的内置函数是 Now();SQL Server 中是 getdate()。
DateDiff() -> DateDiff()
用来表示时间差的内置函数都是 DateDiff:不过 Access 中第一个变量得加引号,比如 DateDiff('d', dt1, dt2);SQL Server 中第一个变量则不能加引号,比如 DateDiff(d, dt1, dt2)。
除了上面的问题,当然还有一些,不过我认为上面是最常遇到的。