电信主站 网通分站
购买流程 付款方式 常见问题 在线提问 续租服务 购物车
用户名: 密 码: 忘记密码?
首 页
域名注册
虚拟主机
双线主机
服务器租用
VPS主机
企业邮局
代理专区
客服中心
虚拟主机行业资讯 虚拟主机评测对比 互联网最新动态 技术学院 站长资讯 在线教程 网站运营
搜索优化 服务器 网络编程 图形图象 站长之家 网页制作 操作系统
冲浪宝典 软件教学 视频通信 办公软件 邮件系统 网络安全 认证考试
您当前位置:西部数码->资讯中心-> 操作系统-> Windows Vista教程
ado.net快马加鞭_ado.net应用
作者:网友供稿 点击:0
  西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!虚拟主机可在线rar解压,自动数据恢复设置虚拟目录等.虚拟主机免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金!
文章页数:[1] 

当然首先是使用链接池了~~
连接池
Connection Timeout--尝试连接数据存储区时的等待时间默认是15秒
Min Pool Size-连接池的最小容量
Max Pool Size-连接池最大容量默认是100
Pooling 默认是true则请求从连接池返回一个新的连接,没有泽创建

Connection Reset表示在从连接池中删除数据库连接时,将会重置该连接,默认是true,如果设置成false则在创建连接时往返服务器的次数会更少但是不更新连接状态

如果出了毛病就~~SqlConnection.ClearAllPools();//清除连接池
------然后是重头戏~~自然是使用异步咯
1首先在连接字符串中设置一个 async=true
-------理论就这么多了~~看段代码爽爽把

 


31041条纪录4秒


using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
public partial class Default5 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {


    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        DateTime old = DateTime.Now;

        SqlConnection DbCon;
        SqlCommand Command = new SqlCommand();
        SqlDataReader OrdersReader;
        IAsyncResult AsyncResult;//异步


        DbCon = new SqlConnection();
        DbCon.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionStringInfo"].ConnectionString;
        Command.Connection = DbCon;


        Command.CommandText = "Select";
        Command.CommandType = CommandType.StoredProcedure;
        Command.Connection = DbCon;

        try
        {
            DbCon.Open();
            AsyncResult = Command.BeginExecuteReader();
            while (!AsyncResult.IsCompleted)//获取异步操作是否已完成的指示。
            {
                //由于异步操作必须阻止线程秒钟
                System.Threading.Thread.Sleep(10);

            }
            OrdersReader = Command.EndExecuteReader(AsyncResult);
            GridView1.DataSource = OrdersReader;
            GridView1.DataBind();
        }
        catch (System.Exception)
        {

        }
        TimeSpan not=DateTime.Now-old;
        Label1.Text = not.Seconds.ToString();
    }
}
- -上面的只是小事伸手~~来个速度更快的


    //最强大的wait调用,只是把System.Threading.WaitHandle.WaitAll换成,System.Threading.WaitHandle.WaitAny因为System.Threading.WaitHandle.WaitAny
    //可以在某一格进程结束后得到处理,修改try部分--注意看
    protected void Button4_Click(object sender, EventArgs e)
    {
        DateTime old = DateTime.Now;
        //实际上就是在第一个结果集是检索的源,第二个结果集实际上只要查询第一个结果集里面有的字段,不会在数据库中查寻,而是用第一个结果集
        SqlConnection DBCon = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionStringInfo"].ConnectionString);
        SqlCommand Table_1Command = new SqlCommand("select  * from Table_2 where Id>4000001", DBCon);//---这里执行查询后
        SqlCommand MMCommand = new SqlCommand("select Title ,Content from MM,Table_2 where MM.ID=Table_2.Id", DBCon);//Table_2.Id其实是上面的Table_2地一列

        Table_1Command.CommandType = CommandType.Text;
        MMCommand.CommandType = CommandType.Text;

        SqlDataReader Table_1DataReader;
        SqlDataReader MMDataReader;

        IAsyncResult Table_1AsyncResult;
        IAsyncResult MMAsyncResult;

        System.Threading.WaitHandle[] WHandles = new System.Threading.WaitHandle[2];

        //封装等待对共享资源的独占访问的操作系统特定的对象。
        System.Threading.WaitHandle Table_1Whandle;
        System.Threading.WaitHandle MMWhandle;

        try
        {

            DBCon.Open();
            Table_1AsyncResult = Table_1Command.BeginExecuteReader();
            MMAsyncResult = MMCommand.BeginExecuteReader();

            Table_1Whandle = Table_1AsyncResult.AsyncWaitHandle;
            MMWhandle = MMAsyncResult.AsyncWaitHandle;

            WHandles[0] = Table_1Whandle;
            WHandles[1] = MMWhandle;

            System.Threading.WaitHandle.WaitAny(WHandles);

 

 

            for (int index = 0; index < 2; index++)
            {
                //--------返回完成执行等待句柄索引该数据在WHandles索引里面的某个
                int whindex = System.Threading.WaitHandle.WaitAny(WHandles);
                switch (whindex)
                {
                    //注意这里必须和上面装入WHandles集合的索引一样
                    case 0:
                        Table_1DataReader = Table_1Command.EndExecuteReader(Table_1AsyncResult);
                        GridView1.DataSource = Table_1DataReader;
                        GridView1.DataBind();
                        break;
                    case 1:

                        MMDataReader = MMCommand.EndExecuteReader(MMAsyncResult);
                        GridView2.DataSource = MMDataReader;
                        GridView2.DataBind();

                        break;

                }

            }

 

        }
        catch (System.Exception)
        {

        }
        finally
        {
            DBCon.Close();
        }

 

        TimeSpan not = DateTime.Now - old;
        Label1.Text = not.Seconds.ToString();
    }
~~上面的可是高级应用--不过在怎么提速安全第一
首先要设置三台服务器~~或者是三个sqlserver实例咯

 

主要服务器为.
景象服务器为.\Partner
观察者服务器为.\Witness

然后再连接字符串中设置 FailOver Parter=".\Partner"即可

--当往主服务器中插入数据的时候竟象服务器也会插入数据,如果主服务器停止工作则景象服务器被观察者服务器设置为主服务器


文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!
相关主题
文章页数:[1] 
Google
热门文章
·windows powershell的12项酷功能_windows vista
·延长win vista rtm试用期限的技巧_windows vista
·php正式进入iis微软与zend携手推动php语言发展_php文摘
·windows vista系统搜索技巧:组合查询_windows vista
·微软称windows vista无安装次数限制_windows vista
·windows vista系统中如何加快关机速度_windows vista
·微软将为每台vista电脑设置一个域名_windows vista
·十条专家级的vista应用与维护技巧_windows vista
·如何将windows vista计算机设置成媒体服务器_windows vista
·在windows vista中安装iis 7_windows vista

最新文章
·windows vista中如何用闪存保护资料_windows vista
·vista的新特性:懒人的安全感_windows vista
·当windows vista系统提示“内存不足”怎么办?_windows vista
·windows vista为什么不允许两个用户同时登录_windows vista
·十个提高windows vista系统性能的秘密_windows vista
·在vista系统中任意设定鼠标滚动行数_windows vista
·将升级的windows vista驱动还原到原来的版本_windows vista
·卸载多重引导系统中的windows vista操作系统_windows vista
·windows vista系统隐藏的12个网络工具_windows vista
·抛弃acdsee windows live照片库体验_windows vista


 
 


版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!

特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
  打印  刷新  关闭
返回首页 |关于我们 | 联系我们 | 付款方式 | 创业联盟 | 虚拟主机 | 资讯中心 | 友情链接 | 网站地图

版权所有 西部数码(www.west263.com)
CopyRight (c) 2002~2006 west263.com all right reserved.
公司地址:四川成都市万和路90号天象大厦4楼 邮编:610031
电话总机:028-86262244 86263048 86263408 86263960 86264018 86267838
售前咨询:总机转201 202 203 204 206 208
售后服务:总机转211 212 213 214
财务咨询:总机转224 223 传真:028-86264041 财务QQ:点击发送消息给对方635483282
售前咨询QQ:点击发送消息给对方2182518 点击发送消息给对方241975952 点击发送消息给对方275026793 点击发送消息给对方408235859
售后服务QQ:点击发送消息给对方17708515 点击发送消息给对方307742704 点击发送消息给对方287976517 点击发送消息给对方363783715
《中华人民共和国增值电信业务经营许可证》编号:川B2-20030065号