• 遍历DataSet


    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() + "	");
                    }
                    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] + "	");
                //    }
                //    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;
                    }
                }
            }
        }
    }
  • 相关阅读:
    2020.07.01
    2020年5月9日
    2020年4月25日
    2020年4月24日
    2020年4月23日
    2020年4月22日
    2020年3月29日
    2020.3.25
    nacos源码解析(三)-注册中心服务注册处理
    nacos源码解析(二)-客户端如何访问注册中心
  • 原文地址:https://www.cnblogs.com/hehehehehe/p/6042272.html
Copyright © 2020-2023  润新知