|
| |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
利用动网提供的论坛程序创建了一个内部论坛。原来,这个论坛是发布在windows2000的IIS5上的。他的数据库用的是Access。可是,当我将这个论坛迁移到windows2003上以后,发现常常死掉。到网上找了一下,并且咨询了微软的工程师,很多人都认为i这跟他使用Access有关。并且,我想在公司内部网站首页增加一个跑马灯来显示论坛中的新帖子,可是,假如继承用Access的话,访问起来不是那么方便。于是决定迁移到SQl中。 第一步:将数据导入SQL Server 进到SQL Server企业治理器,新建一个数据库,然后,选择导入数据,选择Access数据库作为导入源,导入所有的数据。 第二步:修改数据表 通过这种方法建立的数据表,是没有主键和默认值的,参照原来的Access库修改各个表。(这个比较烦,但是一定得做,因为后面的程序中会用到这些默认值) 第三步:修改程序 将站点迁移到相应的服务器,创建新的站点。首先,要改的就是数据库联接.由于Access中的一些函数和SqL中的一些函数不相同,所以,程序会报错,根据程序的报错信息修改相关的地方。这里主要要修改两个地方: SqL语句中的Now()函数: 在Access中使用Now()函数来获取当前时间,而在SQL Server中用Getdate()函数来获取当前时间。但是,由于原来的程序是采用vb Script写的,VbScript中也采用Now()函数获取当前时间,所以要小心Sql语句中的Datediff函数的第一个参数: 在Access中DateDiff的第一个参数用引号,并且只用一个字母来表示比较的部分,而在SqLServer中不需要引号,并且用全称和或者简称来表示,并且简称也是两个字母的。 改完后逐项测试,改正所有的错误(都挺简朴的)。 程序就可以正常使用了,前后时间可能花了4个多小时吧。 我想到以下几点: 1、假如,我们要使用Access数据库,为了以后迁移方便,我们应该尽量避免使用数据库的函数,而是多用程序语言的函数,在SQL语句的外面解决计算问题。假如,不能避免要使用这些数据库函数,我们也应该在代码中设置明显的注释标记,以便于以后迁移。 2、我们在设计程序时候,要充分考虑数据库的迁移的需要,在插入语句、查询语句等语句的时候要尽量采用标准的SqL语法,并且要不厌其烦得插入默认值,而不要依靠数据库提供默认值,这样做,对以后的改进可能会有好处。 返回类别: 教程 上一教程: SQL SERVER 7.0数据库的六种数据移动方式 下一教程: SQL中PRINT语句的烦恼 您可以阅读与"将使用ACCESS的论坛迁移到SQL SERVER中"相关的教程: · 从ORACLE迁移到SQL SERVER的陷阱 · SQL SERVER 7.0 的数据迁移到MYSQL上的一种方式 · 使用SQL SERVER导入和索引 MICROSOFT WORD 文档 · 使用SQL SERVER 将现有代码作为WEB 服务提供 · SQL SERVER关于函数中如何使用GETDATE() |
| 快精灵印艺坊 版权所有 |
首页 |
||