码迷,mamicode.com
首页 > 其他好文 > 详细

4.遍历DataSet

时间:2016-11-08 11:26:15      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:scalar   void   key   client   自动连接   str   query   sqlhelper   com   

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

namespace _05遍历DataSet
{
    class Program
    {
        static void Main(string[] args)
        {
            System.Data.DataTable dt = CommonCode.Sqlhelper.ExecuteDataTable("select Id,Name,paradId from Table_Para");
             //第一种方式:
            foreach (DataRow item in dt.Rows)
            {
                for (int i = 0; i < dt.Columns.Count; i++)
                {
                    Console.Write(item[i].ToString() + "\t");
                }
                Console.WriteLine();
            }
                //第二种方式:
            //for (int i = 0; i < dt.Rows.Count; i++)
            //{
            //    for (int j = 0; j < dt.Columns.Count; j++)
            //    {
            //        //输出第i行的第j列
            //        Console.Write(dt.Rows[i][j] + "\t");
            //    }
            //    Console.WriteLine();
            //}


            Console.ReadKey();


        }
    }
}
效果图:两种效果图一样
技术分享
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Text;

namespace CommonCode
{

    public static class Sqlhelper
    {
        private static readonly string ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["ConnString"].ConnectionString;
        //执行数据库无非就是执行cmd的以下方法
        //1. ExecuteNonQuery 执行一个insert update delete
        public static int ExecuteNonQuery(string sql, params SqlParameter[] parameters)
        {
            using (SqlConnection conn = new SqlConnection(ConnectionString))
            {
                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    cmd.Parameters.AddRange(parameters);
                    conn.Open();
                    return cmd.ExecuteNonQuery();
                }
            }
        }
        //2.ExecuteScaler 返回结果集的第一行第一列
        public static object ExecuteScaler(string sql, params SqlParameter[] parameters)
        {
            using (SqlConnection conn = new SqlConnection(ConnectionString))
            {
                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    cmd.Parameters.AddRange(parameters);
                    conn.Open();
                    return cmd.ExecuteScalar();
                }
            }
        }

        //3.ExecuteReader 返回一个Reader对象,用于读于多行多列数据
        //在数据库上产生一个结果集,每次Read,从数据库服务器上读取一条数据回来,所以使用Reader读取数据,不能与数据库断开连接.
        public static SqlDataReader ExecuteReader(string sql, params SqlParameter[] parameters)
        {
            SqlConnection conn = new SqlConnection(ConnectionString);
            
                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    cmd.Parameters.AddRange(parameters);
                    conn.Open();
                    try
                    {
                        //在sqlhelper中,由于dr在返回给用户使用,所以注意dr不要使用using(){]
                        SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
                            return dr;
                    }
                    catch (Exception ex)
                    {
                        conn.Close();
                        throw ex;  
                    }
          
                }
            }
        //4.执行一个sql语句,并把结果集放入本地的DataTable中.这里数据已
        //经放到本地,断开数据库连接,还是可以访问到数据的.
        public static DataTable ExecuteDataTable(string sql, params SqlParameter[] parameters)
        {
            using (SqlConnection conn = new SqlConnection(ConnectionString))
            {
                using (SqlDataAdapter da = new SqlDataAdapter(sql, conn))
                {
                    da.SelectCommand.Parameters.AddRange(parameters);
                    DataTable dt = new DataTable();
                    //Fill方法其实执行的是da.SelectCommand中的sql语句,这里可以写conn.open也可以不写,如果不写,da会自动连接数据库
                    da.Fill(dt);
                    return dt;
                }
            }
        }
    }
}

 

4.遍历DataSet

标签:scalar   void   key   client   自动连接   str   query   sqlhelper   com   

原文地址:http://www.cnblogs.com/hehehehehe/p/6042272.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!