在C#语言中SqldataRead和DataSet用法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在C#语言中SqldataRead和DataSet用法相关的知识,希望对你有一定的参考价值。

string conStr = System.Configuration.ConfigurationManager.AppSettings["conStr"];SqlConnection conn=new SqlConnection(conStr);SqlCommand myCommand=new SqlCommand("slelct*form where",conn);查询到数据后那么可以直接用 SqlDataRead Read=myCommand.ExecuteReader();提取所查询到的数据那DataSet这样填充数据机还有什么用处啊麻烦高手解答

SqlDataRead和Dataset的选择
  Sqldataread优点:读取数据非常快。如果对返回的数据不需做大量处理的情况下,建议使用SqlDataReader,其性能要比datset好很多。缺点:直到数据读完才可close掉于数据库的连接
  (SqlDataReader 读数据是快速向前的。SqlDataReader 类提供了一种读取从 SQL Server 数据库检索的只进数据流的方法。它使用 SQL Server 的本机网络数据传输格式从数据库连接直接读取数据。DataReader需及时显式的close。可及时的释放对数据的连接。)
  Dataset是把数据读出,缓存在内存中。缺点:对内存的占用较高。如果对返回的数据需做大量的处理用Dataset比较好些可以减少对数据库的连接操作。优点:只需连接一次就可close于数据库的连接
  *一般情况下,读取大量数据,对返回数据不做大量处理用SqlDataReader.对返回数据大量处理用datset比较合适.对SqlDataReader和Dataset的选择取决于程序功能的实现。
参考技术A 建议和sqldataAdapter一起用! DataSet ds=new DataSet();string sql="select * from 表名":string conStr = System.Configuration.ConfigurationManager.AppSettings["conStr"];SqlConnection conn=new SqlConnection(conStr);sqlDataAdapter sda=new sqlDataAdapter(sql,conn);sda.Fill(ds,"temp");

14.16通过SqlDataRead方法和SqlDataSet方法 打印表格

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using System.Data.SqlClient;

namespace _14._16本章小结及任务实施
{
class Program
{
static void Main(string[] args)
{
string constr = "Server=.;uid=sa;pwd=zqyo850619;database=company";
SqlConnection mycon = new SqlConnection(constr);

try
{
//通过DataReady打印数据
mycon.Open();
string sql = "select * from Clerk";
SqlCommand mycom = new SqlCommand(sql,mycon);
SqlDataReader mydr = mycom.ExecuteReader();
Console.WriteLine("使用SqlDataReader打印数据");
for(int i = 0; i < mydr.FieldCount; i++)
{
Console.Write(mydr.GetName(i)+"\t");
}
Console.WriteLine();
while (mydr.Read())
{
for(int i = 0; i < mydr.FieldCount; i++)
{
Console.Write(mydr[i].ToString()+"\t" );
}
Console.WriteLine();
}
mydr.Close();
Console.WriteLine("使用SqlDataSet打印输出");
SqlDataAdapter myda = new SqlDataAdapter(sql, mycon);
DataSet myds = new DataSet();
myda.Fill(myds, "Clerk");
foreach(DataTable table in myds.Tables)
{
foreach(DataColumn col in table.Columns)//输出字段名
{
Console.Write(col.ColumnName+"\t");

}
Console.WriteLine();
foreach(DataRow row in table.Rows) //迭代每行
{
foreach(DataColumn col in table.Columns)
Console.Write(row[col]+"\t");
Console.WriteLine();
}
}

}
catch(Exception ex)
{
Console.WriteLine(ex.Message.ToString());
}
finally
{
mycon.Close();
}
Console.ReadKey();
}
}
}

 

以上是关于在C#语言中SqldataRead和DataSet用法的主要内容,如果未能解决你的问题,请参考以下文章

C#中 sqlDataRead 的三种方式遍历读取各个字段数值

C#中DataSet类的使用

C# DataSet:更新数据库

C#中IDataReader和DataSet的区别是啥呢?

C# DataSet与DataTable的区别和用法

C# DataSet与DataTable的区别和用法