当前位置: 首页 > 图文教程 > 数据库 > MYSQL > ASP动态网站制作中使用MYSQL的分析

MYSQL
MySQL collation方法
mysql Myisamchk小工具使用手册
MySQL server has gone away错误提示解决方法
从其他电脑访问本机的Mysql的设置方法
mysql 卡死 大部分线程长时间处于sending data的状态
MySQL 存储过程和"Cursor"的使用方法
mysql 忘记密码的解决方法(linux和windows小结)
MySQL 编码机制
CMS不要让MySQL为你流泪
MySQL 数据类型和建库策略
MYSQL 数据库命名与设计规范
mysql 按中文字段排序
mysql proxy问题的解决方法
Mysql 数据库访问类
MySQL 数据库跨操作系统的最快迁移方法
MySQL 数据库的临时文件究竟储存在哪里
MySQL 优化设置步骤
mysql 终结点映射器中没有更多的终结点可用的解决方法
MYSQL WHERE语句优化
MySQL 服务器参数说明及查看 设置方法

ASP动态网站制作中使用MYSQL的分析


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-30   浏览: 60 ::
收藏到网摘: n/a

环境:winxp sp2 ,mysql5.0.18,mysql odbc 3.51 driver 表采用 myisam引擎。access 2003

不同的地方:

1、插入数据时候,mysql 应尽量使用 insert into语句,避免使用 rs.addnew,如果非的要用,应先设置 conn.CursorLocation=3 否则,肯定报错,而且我发现,用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秒!

查询比较:access 查询40w条数据 化了12秒,mysql化了14秒,稍微慢点。

总结:总的来讲,access的插入速度要比mysql快大约三倍。查询数据时候,如果数据量比较小,access也要比mysql快大约2倍,但当数据量很大时,mysql的查询速度变化不大,但access则下降的比较厉害。

当然,mysql应该要比access快的,我估计问题出在他的odbc驱动上,而access的驱动是用的ole,微软对他作了很多优化,所以,在这个测试中,mysql蒙冤受屈了!至于并发性能,我没有测试,不过我想access应该大大不如mysql吧。

如果要使用
rs.pagecount
rs.pagesize
rs.AbsolutePage
rs.recordcount
这样的属性,你必须先conn.CursorLocation=3
否则以上属性统统不能使用。
还有为了防止乱码和插入中文错误,你必须在conn.open后,立即:conn.Execute ("SET NAMES 'gb2312'")
否则,肯定插入错误,而且乱码没商量。

连接方式:

'用系统DNS连接:
strconnection="dsn=mysql; OPTION=16384;driver={mysql odbc 3.51 driver};server=127.0.0.1;uid=root;pwd=67918;database=test"
'直接用字符串连接:
'strconnection="Driver={mysql odbc 3.51 driver}; Server=localhost; Port=3306; Option=0; Socket=; Stmt=; Database=test; Uid=root; Pwd=67918;Option=16384"
set conn=server.createobject("adodb.connection")
conn.CursorLocation=3
conn.open strconnection