accesssqlserver:Access转MS SqlServer的注意事项来源: 发布时间:星期二, 2008年12月23日 浏览:121次 评论:0
1、自动增加字段需要重写在access中经常使用自动编号字段导入到mssql后他并不是自增型需要手工设置把导入后自动编号字段标识“否”改为“是”“种子”和“递增量”都为“1”才能成为自动编号
2、所有默认值都丢失了主要是数字类型和日期类型 3、所有nowtimedate要改成getdate 4、所有datedf(d, time1, time2)要改成datedf(day, time1, time2) 5、所有datedf(ww, time1, time2)要改成datedf(week, time1, time2) 6、所有datedf(d, time1, time2)要改成datedf(day, time1, time2) 7、在mssql server中有许多保留字在access中是没有当你把数据导入到mssql时候问题就出来了mssql在导入时候会自动给这些字段(包括数据库中表名)加上“[字段名]”因此你必须修改你脚本把相应字段名字(或者表名字)加上中括号或改变字段名字为不是mssql保留字 8、在用access有关时间使用大家喜欢使用“select * from aaaa while time="&now”这样sql语句然而在mssql中没有“now”这个而是使用“getdate”所以所有sql语句中“now”必须换成“getdate” 9、日期不相同在对ACCESS数据库处理中可用date、time等但对 SQL SERVER数据库处理中只能用datedf,dateadd等而不能用date、time等 10、转化时跟日期有关字段SQL SERVER默认为smalldatetime型我们最好将它变为datetime型datetime型范围比smalldatetime型大有时用smalldatetime型时转化失败而用datetime型时转化成功 11、isnull(rowname)要改成rowname = null 12、CursorType要改成1,也就是打开数据库时要给出第个数字参数为1否则记录可能显示不完整 13、备注类型要通过cast(column as varchar)来使用 14、true/false类型不能使用要变为1/0 15、对此两种数据库进行操作sql语句不全相同例如:在对ACCESS数据库进行删除纪录时用:"delete * from user where id=10",而对SQL SERVER数据库进行删除是用:"delete user where id=10". 16、在对ACCESS数据库处理中,sql语句中直接可以用些VB像cstr而对SQL SERVER数据库处理中却不能用 17、在accesssql语句中时间使用变量查询时候大家般使用"select * from aaaa while time=#"&变量名&"#"在mssql中是不行他语法是“select * from aaaa while time="&变量名&""”(意思是让你把日期时间变量当成串来使用) 18、原来ASP里“Delete * FROM ……”要改为“Delete FROM ……” 19、有可能rs.update失败修改成update 表名 字段=‘值' 这样通过 20、access里面除法可以使用"\"或者"/"MSSQL里面只能使用"/" 21、在SqlServer中建立主键 22、如果还有问题用:rs.open sql,conn,3,2试试 0
相关文章
读者评论发表评论 |