zoukankan      html  css  js  c++  java
  • mysql 使用DataReader 读数据

    //注意参数的用法
    string SqlText = @"
    select * from [tableName] where condition1=?condition1 and condition2=?condition2   
    ";

    using (MySqlConnection conn = new MySqlConnection( "连接字符串"))

    {
    conn.Open();

    MySqlCommand command = new MySqlCommand(SqlText, conn);
    command.CommandTimeout = 500; // 此处设置command的超时时间

    command.Parameters.Add(new MySqlParameter("?condition1",value1)); //注意参数的替换方式
    command.Parameters.Add(new MySqlParameter("?condition2",value2));

    MySqlDataReader retReader = command.ExecuteReader(); //用DataReader读数据

    while (retReader.Read()) //开始读数据
    {

    //对数据进行处理
    retReader["columeName"].ToString() ;

    }

    }

    SqlConnection.ConnectionTimeout : 
    1. 说明: 获取在尝试建立连接时终止尝试并生成错误之前所等待的时间。
    2. 默认值:等待连接打开的时间(以秒为单位)。默认值为 15 秒。
    3. 备注:值 0 指示无限制
    4. 只读

    SqlCommand.CommandTimeout 
    1. 说明:获取或设置在终止执行命令的尝试并生成错误之前的等待时间。
    2. 默认值:等待命令执行的时间(以秒为单位)。默认为 30 秒。//注意,当我们处理大数据量的数据时,要设置CommandTimeout
    3. 备注:值 0 指示无限制,在 CommandTimeout 中应避免值 0,否则会无限期地等待执行命令。
    4. 可读可写

    特别注意:
    "超时时间已到。在操作完成之前超时时间已过或服务器未响应"
    类似这种错误,一般是 SqlCommand.CommandTimeout  或者 SqlBulkCopy.BulkCopyTimeout 的时间超时, 而不是 SqlConnection.ConnectionTimeout。

  • 相关阅读:
    Mininet 搭建自定义网络
    struts 2 三目运算
    shell 变量自增(转)
    Java DES 加密和解密源码(转)
    java调用shell脚本
    shell 学习
    debian安装jdk6
    linux(debian) 安装jdk
    利用SecureCRT上传、下载文件(使用sz与rz命令)
    oracle之报错:ORA-00054: 资源正忙,要求指定 NOWAIT
  • 原文地址:https://www.cnblogs.com/menglin/p/7715706.html
Copyright © 2011-2022 走看看