ADO.net的学习

                   嘿嘿,又到了总结了的时间,今天我们学习了ADO.net,什么是ADO.NET:ADO.NET就是一组类库,这组类库可以让我们通过程序的方式访问数据库,就像System.IO下的类操作文件一样, System.Data.这组类是用来操作数据库(不光是MSSql Server),它提供了统一的编程接口让操作其它数据库(Access、Oracle等)的方式和操作MSSql Server一致。下面就简单的总结下啦,

            一.通过在VS中的简单方法插入数据

class Program
    {
        static void Main(string[] args)
        {
            string sqlconn = "Data Source=.;Initial Catalog=claa;Integrated Security=True";  
            using (SqlConnection sqlcon = new SqlConnection(sqlconn))
            {
                sqlcon.Open();
                string text = "Insert into Class values(‘李四‘,‘我很快乐‘)";
                using (SqlCommand conn = new SqlCommand(text,sqlcon))
                {
                   int number= conn.ExecuteNonQuery();
                   if (number > 0)
                   {
                       Console.WriteLine("成功");
                   }
                   else
                   {
                       Console.WriteLine("失败");
                   }
                   Console.ReadKey(); 
                }
            }
        }
    }

 

            二.通过在VS中的简单方法删除数据

class Program
    {
        static void Main(string[] args)
        {
            string constr = "Data Source=.;Initial Catalog=claa;Integrated Security=True";
            using (SqlConnection con = new SqlConnection(constr))
            {
                con.Open();
                string sql = "delete from Class where Class.cName=‘李四‘";
                using (SqlCommand conn = new SqlCommand(sql, con))
                {
                  int i= conn.ExecuteNonQuery();
                  if (i > 0)
                  {
                      Console.WriteLine("成功");
                  }
                  else
                  {
                      Console.WriteLine("失败");
                  }
                }
                Console.ReadKey();
            }
        }
    }

 

            三.通过在VS中的简单方法更新数据

class Program
    {
        static void Main(string[] args)
        {

            string connectionString = "Data Source=.;Initial Catalog=db_buiness;Integrated Security=True";
            using (SqlConnection conn = new SqlConnection(connectionString))
            {
                conn.Open();

                string commandText = "Update Class set  cName=‘张三’  where id=2 ";
                using (SqlCommand cmd = new SqlCommand(commandText,conn))
                {
                  int num=  cmd.ExecuteNonQuery();

                  if (num > 0)
                  {
                      Console.WriteLine("修改成功");
                  }
                  else
                  {
                      Console.WriteLine("修改失败");
                  }

                }
                Console.ReadKey();
            }
        }
    }

 

            四.通过在VS中的简单方法查询数据

            1. 创建一个winform窗体,在窗体上面拖拉一个控件dataGridView,然后实现其代码如下:

 private void Form1_Load(object sender, EventArgs e)
        {
            string connection = "Data Source=.;Initial Catalog=claa;Integrated Security=True";
            using (SqlConnection conn = new SqlConnection(connection))
            {
                conn.Open();
                string sql = "select * from log";
                using (SqlCommand cmd = new SqlCommand(sql,conn))
                {
                    //DataTable dt = new DataTable();        //当读取的表为一张表的时间,可以选择使用DataTable
                    //using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
                    //{

                    //    sda.Fill(dt);
                    //    this.dataGridView1.DataSource = dt;
                    //}
                    DataSet ds = new DataSet();               //使用DataSet读取数据集
                    using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
                    {
                        sda.Fill(ds);
                        this.dataGridView1.DataSource = ds.Tables[0];
                    }
                }
            }
        }

 

                     数据库中的表的信息就会显示在界面上面,如下代码所示为:

                 

 

            2.创建一个简单的登陆界面,登陆界面设计如下:

            

           代码如下:

public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void button1_Click(object sender, EventArgs e)
        {
            string name=this.textBox1.Text;
            string pwd = this.textBox2.Text;
            string connection = "Data Source=.;Initial Catalog=claa;Integrated Security=True";
            using (SqlConnection conn=new SqlConnection(connection))
            {
                conn.Open();
                string sql = "select Name,Pwd from Log where Name =@name and Pwd =@pwd";
                SqlParameter sp = new SqlParameter("@name",name);
                SqlParameter sp1 = new SqlParameter("@pwd", pwd);
                using(SqlCommand cmd=new SqlCommand (sql,conn))
                {
                    cmd.Parameters.Add(sp);
                    cmd.Parameters.Add(sp1);
                    DataTable table = new DataTable();
                    using (SqlDataAdapter sqd = new SqlDataAdapter(cmd))
                    {
                        sqd.Fill(table);
                        if (table.Rows.Count > 0)
                        {
                            MessageBox.Show("成功");
                        }
                        else
                        {
                            MessageBox.Show("失败");
                        }
                    }
                }
            }
        }
    }

                   结果如下所示

                  

 

                  。综上  

?                 1.数据提供程序(常用类)
                 Connection:用来连接数据库
                 Command:用来执行SQL语句
                 DataReader:只读、只进的结果集,一条一条读取数据(StreamReader、XmlReader微软的类库中这些Reader的使用方式都差不多)
                 DataAdapter,一个封装了上面3个对象的对象
                 ?数据集(DataSet)
            2.访问数据库的方式有两种
?                 方式一:1.连接数据用Connection;执行SQL语句Command;执行完毕之后将结果一条一条返回。DataReader
                 方式二:使用DataAdapter+DataSet,这种方法本质还是通过Connection、Command、DataReader将数据全部取出来然后放到了DataSet中
                   3.SqlCommand常用的方法
                 ExecuteNonQuery() 执行对数据库的增删改,返回受影响的行数,适合:insert、delete、update(对于其他语句返回-1)
                 ExecuteScalar()  执行查询,返回首行首列
                 ExecuteReader() 执行查询,返回DataReader对象
                  好啦,就总结到这里啦,今天学习的方法好多都是之前没有用过的啦,似乎接触的东西没有那么多啦,但是我们使用起来却是比较困难的啦,所以这个要多练习啦,嘿嘿。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。