ASP和MYSQL开发网站的注意事项
时间:2009-08-21 13:23:00
就目前互联网上大小网站而言,大部分都是采用ASP+ACCESS/SQL Server或者PHP+MySQL来编写;事实上,ASP和MySQL的组合也是一种不错的网站编写组合方案。在本文中,我们就将总结ASP+MySQL,相对于ASP+ACCESS/SQL Server的几个重要的不同点和注意事项。
测试服务器环境
操作系统:Windows 2000 Server;
MySQL数据库:MySQL 5.0.18,采用My ISAM引擎;
ODBC驱动:mysql odbc 3.51 driver;
另安装有Access 2003数据库。
ASP+MySQL与ASP+Access开发******站的主要不同点
1、插入数据时候,在MySQL中应尽量使用insert into语句,避免使用rs.addnew,如果一定要使用,请应先设置 conn.CursorLocation=3 否则可能会报错,而且我们发现,在MySQL中用insert 要比 addnew 快大约3倍的时间。
还有,如果用rs.addnew 方法,当你rs.update时候,是无法像在access中那样,立即获得rs(id")的值的。
2、与Access相比较
同样的表结构,用insert 插入20000条数据时,mysql需花费7.5秒,如果用rs.addnew则需24秒!而在Access中,用insert 则化了化了19.8秒,rs.addnew却只需花费2.8秒!
可见,在MySQL插入数据应尽量使用Insert into语句。
查询比较:
Access查询40w条数据需花费12秒,mysql则花费14秒,稍微慢点。
总结:
总的来讲,Access的插入速度要比mysql快大约三倍。查询数据时候,如果数据量比较小,Access也要比mysql快大约2倍,但当数据量很大时,mysql的查询速度变化不大,但Access则下降的比较厉害。
当然,MySQL应该要比Access快的,我估计问题出在他的ODBC驱动上,而access的驱动是用的OLEDB,微软对他作了很多优化,所以,在这个测试中,mysql蒙冤受屈了!至于并发性能,我没有测试,不过我想access应该大大不如mysql吧。
3、如果要在MySQL中使用以下方法:
rs.pagecount
rs.pagesize
rs.AbsolutePage
rs.recordcount
你必需先设置conn.CursorLocation=3这一属性,否则无法正常使用。