网站导航网学 原创论文 原创专题 网站设计 最新系统 原创论文 论文降重 发表论文 论文发表 UI设计定制 论文答辩PPT格式排版 期刊发表 论文专题
返回网学首页
网学原创论文
最新论文 推荐专题 热门论文 论文专题
当前位置: 网学 > 交易代码 > SQL语法 > 正文

使用SqlDataReader读取数据

论文降重修改服务、格式排版等 获取论文 论文降重及排版 论文发表 相关服务

--
--11.4.1节示例
--
使用SqlDataReader读取数据
string sql = "select * from Person.AddressType";//定义SQL语句返回所有AddressType行
SqlCommand cmd = new SqlCommand(sql, conn);
SqlDataReader reader = cmd.ExecuteReader();//执行SQL查询返回SqlDataReader
while (reader.Read())//循环读取每一行
{
    Console.WriteLine(reader["AddressTypeID"] + " " + reader["Name"]);//输出读取的行的内容
}
reader.Close();//关闭SqlDataReader

使用SqlDataReader读取两个结果集
string sql = "select * from Person.AddressType;select * from Person.ContactType";
//一个SQL语句中定义了两个查询
SqlCommand cmd = new SqlCommand(sql, conn);
SqlDataReader reader = cmd.ExecuteReader();//执行SQL查询
while (reader.Read())//循环读取第一个结果集
{
    Console.WriteLine(reader["AddressTypeID"] + " " + reader["Name"]);//输出读取的内容
}
Console.WriteLine("接下来读取ContactType数据:");
if (reader.NextResult())//读取第二个结果集
{
    while (reader.Read())//循环读取第二个结果集
    {
        Console.WriteLine(reader["ContactTypeID"] + " " + reader["Name"]);//输出第二个结果集
    }
}
reader.Close();

通过SqlDataReader获取架构信息
string sql = "select * from Person.AddressType";//定义一个查询
SqlCommand cmd = new SqlCommand(sql, conn);
SqlDataReader reader = cmd.ExecuteReader();//执行SQL查询返回SqlDataReader
DataTable schemaTable = reader.GetSchemaTable();//获得返回的架构信息
foreach (DataRow row in schemaTable.Rows)//循环读取每一行
{
    foreach (DataColumn column in schemaTable.Columns)//循环读取每一列
        Console.WriteLine(column.ColumnName + " = " + row[column]);//输出列名和内容
    Console.WriteLine();
}
reader.Close();//关闭SqlDataReader

--
--11.4.2节示例
--

通过DataReader获得一个实体实例的函数
private AddressType GetAddressTypeByReader(IDataReader reader)//传入DataReader
{
AddressType addressType = new AddressType();//申明对象
//接下来读取DataReader为对象的每个属性赋值
    addressType.AddressTypeID = (int)reader["AddressTypeID"];
    addressType.Name = reader["Name"].ToString();
    addressType.rowguid = reader["rowguid"].ToString();
    addressType.ModifiedDate = (DateTime)reader["ModifiedDate"];
    return addressType;//返回对象
}
获得单个对象实例
string sql = "select * from Person.AddressType where AddressTypeID="+id;//读取一个对象
SqlCommand cmd=new SqlCommand(sql,conn);
SqlDataReader reader = cmd.ExecuteReader();//执行SQL语句返回SqlDataReader
if (reader.Read()) //判断是否返回了数据
{
   AddressType addressType= GetAddressTypeByReader(reader);//前面定义的函数
   reader.Close();//关闭SqlDataReader
}

获得对象实例集合
string sql = "select * from Person.AddressType";//定义SQL查询语句
SqlCommand cmd = new SqlCommand(sql, conn);
SqlDataReader reader = cmd.ExecuteReader();//执行SQL查询
List<AddressType> addressTypes = new List<AddressType>();//定义一个集合
while (reader.Read()) //循环读取每一行数据
{
    addressTypes.Add(GetAddressTypeByReader(reader)); //将单个实例加入到集合中
}
reader.Close();
 

设为首页 | 加入收藏 | 网学首页 | 原创论文 | 计算机原创
版权所有 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2020 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号 常年法律顾问:王律师