在使用连接ADO超时其混合了函数语言和物件导向程序编制语言并且完美的适用于编程算法技术和探索性开发因此可以在使用的过程当中感受到趣味性和吸引力 使连接ADO超时 活动的突然增长可能使数据库服务器变得十分笨拙大量增加建立数据库连接的时间结果是过长的连接延时将降低数据库的性能用Connection对象的ConnectionTimeout您可以限制放弃连接尝试并发出错误消息之前应用程序等待的时间例如下面的脚本设置ConnectionTimeout属性在取消连接尝试之前等待秒 Set cn=ServerCreateObject(ADODBConnection) cnConnectionTimeout = cnOpen FILEDSN=MyDatabasedsn 没有人可以同时阅读大量的数据象下一页或者无数的分页这样的形式我不知道到底有多少人会去看因此要提高ADO效率不能用简单的Timeout来控制应该是全面的我建议你多多利用检索表单结果只出现一定数量就可以了 并非是很多记录而是需对大量的数据进行处理后汇总一条查询语句经优化后仍需秒以上ADO超时而ASP的超时在秒准时报错Timeout 我曾经也试过但没有任何效果我是通过ODBC连接到SQL Server 再在ASP中用ADO与ODBC 相联不知这些数据源是否支持该属性如果不支持是否还有其它方法谢谢您的回复! 使用强类型DataSet时你能给DataSet 的XML大纲定义语言(XSD)作注解以确保强类型DataSet正确的处理空(Null)的引用空值(nullValue)注释使你能用StringEmpty这个特定值代替DBNull保持了空引用或者产生一个异常选择其中的哪个依赖于应用程序的内容默认情况下遇到空引用将产生一个异常 刷新DataSet中的数据 如果你希望使用更新后的值从服务器刷新数据集中的值使用DataAdapterFill如果主键定义在数据表上DataAdapterFill基于主键匹配新行并把服务器的数据改成已存在的行被刷新行的RowState设置为Unchanged即使在刷新前它被修改过注意如果给数据表定义了主键DataAdapterFillADO超时添加新行可能重复主键值 用于在某个时候只返回一页记录的技术之一是建立一个SQL语句该语句包含一个WHERE和ORDER BY子句并有TOP判定这种技术依赖于识别每个唯一行的方法当导航到下一页的记录时修改WHERE子句使它包含所有唯一标识比当前页标识大的记录 当导航到前面一页时修改WHERE子句使它包含所有唯一标识比当前页标识小的记录对于两种查询都只返回记录的TOP页的记录当导航到前面一页时需要对记录进行降序排列这将返回查询的末尾页(如果需要可以在显示前对记录进行重新排序) 另一种技术是建立一个SQL语句包含TOP判定和嵌入的SELECT语句这种技术不ADO超时是基于唯一的识别每行的方法使用这种技术的第一步是把页面的大小与想得到的页面数量相乘接着把该数值传递给SQL查询的TOP判定并按升序排序接着把这个查询嵌入另一个查询该查询从嵌入的查询结果中选择TOP页面大小按降序排列本质上返回的是嵌入的查询的末尾页面 |