1. 程式人生 > >ADO.NET中的模型及對象

ADO.NET中的模型及對象

list exec cmd 成功 密碼 comm log top sin

一、ADO.NET中的模型及對象

1、EexcuteNonQuery------>實現非查詢操作(增刪改)

  sql語句查詢非參數化

            //連接字符串
            string conStr = @"server=.;database=MyDataBase;uid=sa;pwd=sa";
            //要執行的sql語句
            string sql = "insert into MyDataBase(Id,Name,Age,Sex) values(1,‘曹操‘,500,‘m‘)";
            //創建連接對象
            using
(SqlConnection conn = new SqlConnection(conStr)) { //第一種寫法; //創建執行對象(執行sql語句) //using (SqlCommand cmd = new SqlCommand()) //{ // cmd.Connection = conn; // cmd.CommandText = sql; // //
打開數據庫 // conn.Open(); // //返回收影響的行數 // int count = cmd.ExecuteNonQuery(); // Console.WriteLine("{0}行收影響", count); //} //第二種寫法 在構造函數中傳入SQL語句和連接對象 using (SqlCommand cmd = new SqlCommand(sql, conn)) { conn.Open();
int count = cmd.ExecuteNonQuery(); Console.WriteLine("{0}行受影響", count); } } Console.ReadKey()

2、ExcuteScalar查詢首行首列(返回Object類型)

            // 提示用戶輸入用戶名
            Console.Write("Enter User Id:");
            string userName = Console.ReadLine();
            // 提示用戶輸入密碼
            Console.Write("Enter Password:");
            string userPwd = Console.ReadLine();
            //連接字符串
            string conStr = @"server=.;databae=MyDataBase;uid=sa;pwd=sa";
            //sql 語句
            string sql = string.Format("select count(*) from Users where userName=‘{0}‘ and userPwd={1}", userName, userPwd);
            int count = 0;
            using (SqlConnection conn = new SqlConnection(conStr))
            {
                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    conn.Open();
                    //返回首行首列是Object類型
                    count = (int)cmd.ExecuteScalar();
                }
            }
            if (count > 0)
            {
                Console.WriteLine("登錄成功");
            }
            else
            {
                Console.WriteLine("登錄失敗");
            }

3、ExecuteRader逐行讀取數據

            //連接字符串
            string conStr = @"server=.;database=MyDataBase;uid=sa;pwd=sa";
            //sql語句  查詢整張表的數據(逐行取)
            string sql = "select * from Data";
            using (SqlConnection conn = new SqlConnection(conStr))
            {
                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    conn.Open();
                    //一次一行數據來回讀取數據
                    SqlDataReader reader = cmd.ExecuteReader();
                    using (reader)//每次向下讀取一行  直到讀取完為止
                    {
                        Console.WriteLine("{0},{1},{2}", reader[0], reader[1], reader[2]);
                    }
                    while (reader.Read())//循環讀取每一行數據 直到讀取完為止
                    {
                        List<string> list = new List<string>();//每讀取一行  創建一行string類型
                        for (int i = 0; i < reader.FieldCount; i++)//循環遍歷每一行數據的每一列數據
                        {
                            list.Add(reader[i].ToString());
                        }
                        Console.WriteLine(string.Join(",", list));
                    }
                }
            }

4、SqlDataAdapter讀取數據集

        string conStr = @"server=.;database=MyDataBase;uid=sa;pwd=sa";
            string sql = "select * top 10 from Data";
            DataSet ds = new DataSet();
            using (SqlDataAdapter adapter = new SqlDataAdapter(sql, conStr))
            {
                adapter.Fill(ds);
            }

            //取出DataSet中的數據

            //遍歷取出DataSet ds中的每一個表
            for (int i = 0; i < ds.Tables.Count; i++)
            {
                DataTable dt = ds.Tables[i];

                //遍歷DataTable dt中的每一行
                for (int j = 0; j < dt.Rows.Count; j++)
                {
                    DataRow row = dt.Rows[i];

                    List<string> list = new List<string>();
                    for (int k = 0; k < row.ItemArray.Length; k++)
                    {
                        list.Add(row.ItemArray[k].ToString());
                    }
                    Console.WriteLine(string.Join(",",list));
                }
            }

ADO.NET中的模型及對象