学习:C#一次性执行多条语句(查询的是不同的表 DataTable和DataSet)

来源:互联网 发布:java 微商城开源框架 编辑:程序博客网 时间:2024/05/28 15:18

在这之前要记录一下之前的知识:

DataTable类型:通俗的说就是二维数据表,相当于日常用的表格

DataSet类型:我的理解就是 DataTable 表的集合,DataSet 里包含有一个或多个 DataTable 表


一次执行多条sql语句,每一条句子中间用“;”隔开,(我用的是公司的SQLHelper,里面有已经做好的方法,执行查询语句后能够返回 DataSet 类型的数据)

(DataSet ds= SqlHelper.ExecuteDataset(SqlHelper.GetConnection(), CommandType.Text, sql string, para);//执行sql语句:sql string)

(DataTable dt = SqlHelper.ExecuteDataset(SqlHelper.GetConnection(), CommandType.Text, sbrSQL.ToString()).Tables[0];//效果和上面同样效果,但是后面多了个  .Tables[0] ,因为这句是要返回的DataSet  集合里面的第一个表,所以返回的数据类型是表格类型,也就是这里的DataTable )

要使用数据表里的某个字段数据,需要遍历DataSet ,如果只需要一个DataTable ,下面的语句就不需要最外一层foreach

foreach (DataTable dt in ds.Tables)
                {
                    foreach (DataRow dr in dt.Rows)
                    {

                        mloginuser.NE_ID = int.Parse(dr["NE_ID"].ToString());
                        mloginuser.NE_V_NO = dr["NE_V_NO"].ToString();
                        mloginuser.NE_I_Humidiy = float.Parse(dr["NE_I_Humidiy"].ToString());
                        mloginuser.NE_D_DateTime = DateTime.Parse(dr["NE_D_DateTime"].ToString());
                        mlsdatalist.Add(mloginuser);
                    }
                }