首页 美女贴图 网络日记 重庆租房 搜索指南 网络电视 飘网音乐 飘网博客 精彩网址 友情链接 飘网地图 本站留言
飘网中国
专题:网络营销 | 网站设计 | QQ技巧 | 搜索优化 | 菜鸟进阶 | 病毒攻防 | 网络技术 | 系统应用 | 本站作品 | 常用软件 | 工具软件 |
飘网中国>>网站设计>>正文

ACCESS与SQL_Server的ASP代码区别

编辑:Admin 来源: 更新:2007-9-13 点击:
【字体:

摘要:后台数据库:[Microsoft Access] 与 [Microsoft Sql Server] 更换之后,ASP代码应注意要修改的一些地方,系统已经安装好SQL Server2000并且打上了SP3补丁;安装好Office套件里面的Access
关键字:ACCESS SQL_Server ASP代码 
正文:
End If 
On Error Resume Next 
Set conn = Server.CreateObject("ADODB.Connection") 
conn.open ConnStr 

当然你使用SQL的话,有关access的使用语句可以删除,就是else后面到on error resume next前面,变成这样: 

Dim ConnStr 
'sql数据库连接参数:数据库名、用户密码、用户名、连接名(本地用local,外地用IP) 
Dim SqlDatabaseName,SqlPassword,SqlUsername,SqlLocalName 
SqlDatabaseName = "dvbbs7" 
SqlPassword = "" 
SqlUsername = "dvbbs" 
SqlLocalName = "(local)" 
ConnStr = "Provider = Sqloledb; User ID = " & SqlUsername & "; Password = " & SqlPassword & "; Initial Catalog = " & SqlDatabaseName & "; Data Source = " & SqlLocalName & ";" 
On Error Resume Next 
Set conn = Server.CreateObject("ADODB.Connection") 
conn.open ConnStr 

也可以简洁一些,写成这样: 
Set conn = Server.CreateObject("ADODB.Connection") 
conn.open "Provider = Sqloledb; User ID = sa; Password = 1234567; Initial Catalog = dvbbs7; Data Source = (local);" 
里面的数据库名称、数据源、用户、密码根据自己的实际情况改写一下。 

四、程序的改写 

这也有两种情况 
1、如果你幸运,拿到的是For SQL的程序,那么如果上面的数据库建立过程没有遇到麻烦,程序基本上就可以运行了,出错的话,只是程序本身的bug,如何修改不是这个帖子讨论的内容,就不赘述了。 
2、大多数情况,程序本身是For Access的,与For SQL的程序差别主要是程序中使用到的SQL查询语句。注意,SQL查询语句是数据库应用不可缺少的部分,不管是For SQL还是For Aceess的程序使用的语法大体差不多,但是有一些微妙的差别,正是这些差别,造成了程序的不通用,也是我们需要修改的主要内容。这样一般要修改的部分如下: 
(1)时间函数的问题:SQL数据库的时间函数与access不同,最常见的是取现在时间的函数,access是now(),SQL是 getdate()。因此凡是在where子句中使用了now()的地方都要改成getdate();注意,now()函数在asp程序本身也要使用,凡是不在数据库查询或执行语句中使用的now()函数千万不要改。 
(2)时间比较函数:datediff('d','时间1',‘时间2’)这是access查询用的格式,SQl中这些引号都要去掉,同时时间格式的前后可能加上了#,这也要去掉。同样这也是指在sql语句中的,在asp语句中的要保持原样。 
(3)空值的表示:在access中,判断空值一般用是否=""来表示,但是这在SQL中往往出错,如果遇到出错的问题或者程序运行不正常,可以改成如这样判断:where (name is null) 
(4)真假值判断:access中可以用=true、=false来判断,但是在SQL中就会出错,因此在SQL查询或执行语句中这类判断要分别改成=1、= 0。注意一点:有些程序虽然写成=“true”,但是由于有引号,所以这个字段是字符类型的,你不能改成=1,保持原样即可。 

以上是比较常见的改写的地方,还有一些不太常见,如果遇到了可以在此回帖讨论。 

五、程序的调试 

前面推荐使用带有行号的编辑器,是因为上述的改写不大可能是直接搜索程序源码来做,很难找全。 
我采取的方式一般这样:数据库改写完成,直接调试程序,出错后,看看出错的提示,找到相应文件的代码行,但是根源往往不是那行,比如出错的语句是: conn.execute(sql),但是这句本身是没有错的,错误原因是里面的这个sql字符串,那就向上看这个sql字符串是如何生成的,按照上面所说的程序修改办法修改。 

数据库导入以后,自动增加字段需要重写,所有的数字类型需
[1][2][3][4][5][6][7]
上一篇:MsSQL本地管理方法(远程数据备份)
下一篇:SQL查询语句精华摘要整理篇
最新文章 更多
推荐文章 更多
热门文章 更多
© 2005-2010 飘网中国 版权所有
站长邮箱:①LCC-749AT163.com ②FlymornATgmail.com(AT改为@)
如转载时,请注明出处;本站部分资源来自网络,如有侵权,请来信说明;飘易文章系统 HTML版.
渝ICP备05000119号