DataSet大家都比较熟悉了,它就是我们所说的离线数据集。但是不能存储大量的数据,我们可以使用强类型的dataset也可以使用弱类型的dataset.弱类型的dataset使用如下
DataSet dataSet = new DataSet(); //创建一个DataSet
//取得连接字符串
string connStr = ConfigurationManager.ConnectionStrings["ConnStr"].ToString();
//取得连接
using (SqlConnection sqlConn = new SqlConnection(connStr))
{
sqlConn.Open();
using (SqlCommand command = sqlConn.CreateCommand())
{
command.CommandText = "select * from student";
SqlDataAdapter adapter = new SqlDataAdapter(command);
//把dateset填充到适配器里
adapter.Fill(dataSet);
//dataset可能存储了好几张表,所以我们取第一张表
DataTable table = dataSet.Tables[0];
DataRow row = table.Rows[0];
row["sname"] = "json";
new SqlCommandBuilder(adapter);
adapter.Update(dataSet);
}
}
这样的操作有个缺点就是有时我们记不住程序的列名,写出来的程序可能就会出错。因此这里也提供了另一种强类型dataset。使用之前就新建一个数据集就OK了。操作如下
文件新建之后把表拖到右边的空白里就好了
后面就是程序代码了,这次的就比较简单了,代码如下
T_COMPANYTableAdapter adapter = new T_COMPANYTableAdapter();
强类型dataset.DataSetCompany.T_COMPANYDataTable companys = adapter.GetData();
//循环取出数据
for (int i = 0; i < companys.Count;i++ )
{
强类型dataset.DataSetCompany.T_COMPANYRow company = companys[i];
string msg = string.Format("公司名称:{0},公司老板:{1}", company.name,company.boss);
MessageBox.Show(msg);
}
强类型dataset就是我们的项目名称,DataSetCompany是数据集的名称。T_COMPANYDataTable;DataSetCompany;T_COMPANYRow是c#给我们生成的,我们拿来用就好了。 写的比较简单,有写错的欢迎大家拍砖。