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对象
来源:https://www.shuzhiduo.com/A/l1dyW7EqJe/