command对象和DataReader的学习

DataReader的学习

DataReader对象是从数据源中读取只读的且只向前的数据流.它的特点是读取速度非常快,但需要手动编写代码来实现数据的处理工作.
DataReader对象中数据的获得是通过Command对象的ExecuteReader方法而得到的,所以DataReader对象总是和command一起使用.
DataReader对象的主要属性:
FieldCount:获取当前行的列数
IsClosed:判断当前对象是否已关闭
DataReader对象的主要方法:
Close:关闭对象
GetDecimal, GetInt16, GetInt32, GetInt64:获取指定列的值
GetName:获取指定列的列名
GetOrdinal:获取指定列名称的序列号
GetString:获取指定列的字符串形式的值
GetValue:获取以本机形式表示的指定列的值
NextResult: 当存在多个Select语句时,此方法用于读取下一个记录集的结果
Read: 用于判断是否读到记录的末尾
例:如何使用DataReader

ContractedBlock.gif ExpandedBlockStart.gif Code
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace Test
ExpandedBlockStart.gifContractedBlock.gif
{
    
public partial class A333 : Form
ExpandedSubBlockStart.gifContractedSubBlock.gif    
{
        
public A333()
ExpandedSubBlockStart.gifContractedSubBlock.gif        
{
            InitializeComponent();
        }


        
private void button1_Click(object sender, EventArgs e)
ExpandedSubBlockStart.gifContractedSubBlock.gif        
{
            SqlConnection conn 
= new SqlConnection();
            conn.ConnectionString 
= "Data Source=**;Initial Catalog=Test;User ID=**;Password=**"
            conn.Open();

            SqlCommand cmd 
= new SqlCommand();
            cmd.CommandText 
= "select name from test1";
            cmd.CommandType 
= CommandType.Text;
            cmd.Connection 
= conn;

            SqlDataReader dr 
= cmd.ExecuteReader();
            
while (dr.Read())
                listBox1.Items.Add(dr.GetString(
0));

            dr.Close();
            conn.Close();
        }

    }

}

执行结果如下:


command对象

command对象的主要方法有:ExecuteScalar, ExecuteReader, ExecuteNonQuery.
ExecuteScalar:执行后返回的只有一个值. 这个方法的使用大都用在有聚合函数的查询过程中,如求平均值,汇总合计等.
ExecuteReader: 执行后将返回具有DataReader对象类型的行集,故大都用在返回有多行多列的查询语句中,然后再处理DataReader对象.
ExecuteNonQuery: 执行后只返回本次操作所影响的行数. 主要用于没有返回值的操作语句中,如存储过程的执行,插入,修改和删除等语句中.

 (例子待续)

command的使用:
command命令对象的主要属性有:Connection,CommandType,CommandText

using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Data.SqlClient;

namespace Test
{
    class SQLSPCommand
    {
        public void commandSQLSP( string SQLSP)
        {
            SqlConnection conn = new SqlConnection();
            conn.ConnectionString = "Data Source=**;Initial Catalog=**;User ID=**;Password=**";
            SqlCommand cmd = new SqlCommand();

            //如果是SQL语句,用这两行代码
            cmd.CommandText = "SQL语句";
            cmd.CommandType = CommandType.Text;

            //如果是存储过程,用这两行代码
            cmd.CommandText = "StoreProcedureName";
            cmd.CommandType = CommandType.StoredProcedure;

            cmd.Connection = conn;          
        }      
    }
}

 

 

转载于:https://www.cnblogs.com/SissyNong/archive/2009/09/08/1562762.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值