|
文章简介: |
即只需要修改数据库名称、用户名和密码即可覆盖原来的ACCESS连接方法并使用,如果你的网站同时包含了动网论坛,则可根据1的操作将动网的数据库也转换成SQLSERVER,值得称道的是:动网考虑了ACCESS和SQLSERVER两种数据库的使用,因此在修改ASP源代码的时候不需要对动网的源代码进行更改,可谓方便至极,考虑得十分周全 |
作者:未知 文章来源:互联世纪 点击数: 更新时间:2006-12-10 11:23:10 |
如何将动网论坛由ACCESS数据库升级成SQL数据库 |
---- |
【阅读字号:缩小 放大】 |
收藏到... |
数据库也转换成SQLSERVER,值得称道的是:动网考虑了ACCESS和SQLSERVER两种数据库的使用,因此在修改ASP源代码的时候不需要对动网的源代码进行更改,可谓方便至极,考虑得十分周全~~
3。这时候你可以先浏览一下新的网站了,如果出错了,也不用担心,但是有很多页面已经是可以正常显示了。接着就是对整站程序的修改了。尤其要注意的是:所有的修改都只针对对数据库进行操作的语句,几乎全是对SQL语句的修改。而在一般的代码中是绝对不需要修改的!否则会出错!!
4。真假值的判断。ACCESS提供了布尔值这一数据类型,但是在SQLSERVER中,如果你在SQL语句中填写Where AA=True则是错误的,因为MSSQL不支持在数据库中True和False的判断。这时候你需要将所有SQL语句中的True和False改为1和0。而在一般的程序中,例如rs("aa")=True则不需要修改!因为这句话并不是对数据库的操作。可能你会说这样改起来,对于大网站而言,是非常麻烦的,的确,但有一些比较简便的方法。比如在dreamweaver中,你可以利用整个文件夹的查找,找出所有的True和False,然后筛选出对数据库进行操作的True和False并将他们改成1和0。另外还有一点:在SQLSERVER中也需要更改一下,ACCESS转化后布尔值变成了Bit值,最好将默认值设为0,即与ACCESS一样设置默认值为False。
5。有一些网站中提到:sql数据库表是没有自动字段的,因此原来access中的自动字段被转换成了普通字段,需要手工改成标识类型,增量为1。这点其实软件在转化的过程中已经帮你完成了,如果你是手工转化的话,确实需要修改标识类型。还有一点我没有遇到过,但是有的网站也提到了:空值的表示:在access中,判断空值一般用是否=""来表示,但是这在SQL中往往出错,如果遇到出错的问题或者程序运行不正常,可以改成如这样判断:where (name is null)。
6。如果你在SQL语句中同时使用了VB函数,很遗憾,这在MSSQL中是不能被辨认的,最好的方法是先将他在SQL之外处理,然后存入变量中导入到SQL语句中。
7。最主要的还是时间函数的各种修改,这占到了工作量的90%。其一是将所有数据库操作语句中的NOW()转化成GETDATE();其二是datediff和dateadd这类函数需要将第一项中的引号去掉,即datediff("s",date1,date2)改为datediff(s,date1,date2);其三,ACCESS中时间字符串都用#括起来,而MSSQL中是用’’来表示的,即等同于一般的字符串;其四有一些时间函数在MSSQL中是不能被辨认的,基本上所有的SQLSERVER中的时间日期函数如下:
day(), month(), year() dateadd(datepart, number, date), datapart指定对那一部分加,number知道加多少,date指定在谁的基础上加。datepart的取值包括,year,quarter,month,dayofyear,day,week,hour,minute,second,比如明天dateadd(day,1,&n上一页 [1] [2] [3] 下一页 (中华企业文化网)
|
|