这篇文章主要讲解了“SQLServer与Access数据库ASP代码有什么区别”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“SQLServer与Access数据库ASP代码有什么区别”吧!
后台数据库:[MicrosoftAccess]与[MicrosoftSqlServer]更换之后,ASP代码应注意要修改的一些地方:
一、连接问题(举例)
[MicrosoftAccess]constr="DBQ=c:\data\clwz.mdb;DRIVER={MicrosoftAccessDriver(*.mdb)}"[MicrosoftSqlServer]constr="DRIVER={SQLServer};SERVER=host;DATABASE=mydata;uid=sa;pwd="
二、相似函数(举例)
[1]DATEDIFF(datepart,startdate,enddate),其中“datepart”参数可选项如下:
设置描述————————————[MicrosoftAccess]年yyyy季度q月m一年的日数y日d一周的日数w周ww小时h分钟n秒s[MicrosoftSqlServer]yearyy,yyyyquarterqq,qmonthmm,mdayofyeardy,ydaydd,dweekwk,wwhourhhminutemi,nsecondss,smillisecondms
基本上差不多,但注意的是在写的时候,[MicrosoftAccess]要加引号,如:datediff('d',enddate,'2004/08/01'),[MicrosoftSqlServer]则不需要,如:datediff(d,enddate,'2004/08/01')
[2][MicrosoftAccess]中可用如cstr等转数据类型函数,而[MicrosoftSqlServer]中则用convert或cast函数,如:convert(varchar,[amount])等。
[3][MicrosoftSqlServer]取当前时间用getdate等等...
SQLServer与Access数据库ASP代码的区别有哪些
三、语句
[MicrosoftSqlServer]可以用
CASEWHENTHENWHENTHEN...ELSEEND
语句,而[MicrosoftAccess]不支持。[MicrosoftAccess]也不支持between语句,[MicrosoftSqlServer]则可以这样写:[date]between@date1and@date2。
四、查询表
[MicrosoftSqlServer]可三个及以上表join查询,而[MicrosoftAccess]好像只能两个表联接查询(待权威确认),而且[MicrosoftSqlServer]可用“*=”和“=*”连接符。
五、除零问题
[MicrosoftAccess]在碰到除数为零时,自动丢掉相关记录,而[MicrosoftSqlServer]则会报错,且查询中止。删除代码:[MicrosoftAccess]可以这样写:delete*from[table],[MicrosoftSQLServer]只能这样写:deletefrom[table]多*会报错。
当前日期:[MicrosoftAccess]用date(),[MicrosoftSQLServer],用getdate()假如数据库可能会更换类型的话,可以在ASP代码中加上如这样:
ifinStr(constr,"MicrosoftAccess")>0thensqlstr=[MicrosoftAccess][sql代码]elsesqlstr=[MicrosoftSqlServer][sql代码]endif
这样即使改了数据库,也不用改数据库查询更新代码了。再加:access中有true、false的字段记录,而sql里只有smallint,对应假如在access里有“字段名=true”的,在sql里要改成“字段名=1”,网上大部分的免费asp程序使用的是access数据库。但是access数据库作为一个中小型的单机数据库系统,在承担访问量、数据量大的网站应用时,往往就不堪重负了。
一般认为,超过50M的access数据库性能就开始明显下降,超过100M以后,出错、运行慢的问题会更加突出。尽管可以如动网7.0以后那样,从程序的角度尽量优化以图提高性能,但是不能从根本上解决问题。这时也许使用微软的SQLServer数据库就是最可能的办法,当然也可以使用其它的如Oracle、MySQL等等,但是作为改写来说,由于同为微软的产品,改写成SQLServer应该是最省力的办法。
感谢各位的阅读,以上就是“SQLServer与Access数据库ASP代码有什么区别”的内容了,经过本文的学习后,相信大家对SQLServer与Access数据库ASP代码有什么区别这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。