ADO.Net1
一、ADO.Net
数据库连接技术
二、查询
1.步骤:
1)使用数据库空间:using System.Data.SqlClient;
2)连接数据库
3)创建数据库操作命令
4)输入操作命令
5)开启数据库
6)读取数据内容
7)打印
8)关闭数据库
2.例题
SqlConnection Sql= new SqlConnection("server=.;database=bosamvs;user=sa;pwd=123456;");//连接数据库; SqlCommand stud = Sql.CreateCommand();//创建数据库操作命令; stud.CommandText="select*from student";//输入数据库操作命令; Sql.Open();//开启数据库; SqlDataReader reader = stud.ExecuteReader();//读取数据库内容 if (reader.HasRows)//判断是否含有读取内容 { while (reader.Read())//读取一行 { string date=Convert.ToDateTime(reader[2]).ToString("yyyy年MM月dd日"); string sex=((bool)reader[3])?"男":"女"; string grade=((decimal)reader[4]).ToString("#.##"); DateTime age = DateTime.Now; DateTime birth =Convert.ToDateTime(reader[2]); Console.WriteLine("学号:{0};姓名:{1};\t生日:{2};年龄:{3};性别:{4};成绩:{5};", reader[0], reader[1], date,age.Year-birth.Year, sex, grade); } } Sql.Close();//关闭数据库 Console.ReadLine();
三、添加,删除,修改
1.步骤:
(1)添加
1)使用数据库空间:using System.Data.SqlClient;
2)连接数据库
3)输入添加项
4)创建数据库操作命令
5)输入操作命令
6)开启数据库
7)读取数据内容
8)打印
9)关闭数据库
(2)删除
1)使用数据库空间:using System.Data.SqlClient;
2)连接数据库
3)输入删除项编号
4)创建数据库操作命令
5)输入操作命令
6)开启数据库
7)读取数据内容
8)打印
9)关闭数据库
(3)修改
1)使用数据库空间:using System.Data.SqlClient;
2)连接数据库
3)选择要修改内容的编号,输入修改内容
4)创建数据库操作命令
5)输入操作命令
6)开启数据库
7)读取数据内容
8)打印
9)关闭数据库
2.例题
#region 1.查询显示 SqlConnection student = new SqlConnection("server=.;database=bosamvs;user=sa;pwd=123456;");//连接数据库 SqlCommand cmd = student.CreateCommand();//创建数据库命令 cmd.CommandText = "select*from student";//输入查询命令 student.Open();//打开数据库 SqlDataReader table = cmd.ExecuteReader();//读取数据库内容 if (table.HasRows)//判断是否为空 { while (table.Read())//读取一行 { string date = Convert.ToDateTime(table["Birth"]).ToString("yyyy年MM月dd日"); string sex = ((bool)table["Sex"]) ? "男" : "女"; string grade = ((decimal)table["Score"]).ToString("#.##"); Console.WriteLine("学号:{0}\t姓名:{1}\t生日:{2}\t性别:{3}\t成绩:{4}", table["Code"], table["Name"], date, sex, grade); } } student.Close();//关闭数据库 #endregion for (int i = 1; i > 0;i++ ) { #region 2.请输入你想要做的操作(1:添加,2:删除,3:修改): Console.Write("请选择操作:1.添加数据;2.删除数据;3.修改数据。");//选择操作内容 int num = int.Parse(Console.ReadLine()); #region Add if (num == 1)//判断操作内容 { Console.WriteLine("请输入添加内容:"); Console.Write("请输入学号:"); string scode = Console.ReadLine(); Console.Write("请输入姓名:"); string sname = Console.ReadLine(); DateTime sbirth = DateTime.Now; while(true) { try//判断输入日期格式 { Console.Write("请输入生日:"); sbirth = Convert.ToDateTime(Console.ReadLine()); break; } catch { Console.Write("输入格式不对,请重新输入!"); Console.WriteLine(); } } Console.Write("请输入性别:"); string sex = Console.ReadLine(); bool ssex = false; if (sex == "男")//将男,女赋bool值 { ssex = Convert.ToBoolean("true"); } else if (sex == "女") { ssex = Convert.ToBoolean("false"); } Console.Write("请输入成绩:"); decimal sscore = decimal.Parse(Console.ReadLine()); SqlCommand cmdadd = student.CreateCommand();//创建数据库操作命令 cmdadd.CommandText = "insert into student values(" + scode + ",'" + sname + "','" + sbirth + "','" + ssex + "'," + sscore + ")";//输入添加命令 student.Open(); cmdadd.ExecuteNonQuery();//执行数据库命令 Console.Clear();//清屏 Console.WriteLine("添加成功!"); student.Close(); } #endregion #region Delete else if (num == 2) { Console.Write("请输入删除学生学号:"); string scode = Console.ReadLine(); SqlCommand cmddel = student.CreateCommand(); cmddel.CommandText = "delete from student where code=" + scode;//输入删除命令 try//判断命令是否执行成功 { student.Open(); cmddel.ExecuteNonQuery();//执行命令 Console.Clear(); Console.WriteLine("删除成功!"); } catch { Console.WriteLine("删除失败!"); } finally { student.Close(); } } #endregion #region Update else if (num == 3) { Console.WriteLine("请输入修改内容:"); Console.Write("请输入要修改的学号:"); string scode = Console.ReadLine(); Console.Write("请输入更改后的姓名:"); string sname = Console.ReadLine(); DateTime sbirth = DateTime.Now; while (true) { try { Console.Write("请输入更改后的生日:"); sbirth = Convert.ToDateTime(Console.ReadLine()); break; } catch { Console.Write("输入格式不对,请重新输入!"); Console.WriteLine(); } } Console.Write("请输入更改后的性别:"); string sex = Console.ReadLine(); bool ssex = false; if (sex == "男") { ssex = Convert.ToBoolean("true"); } else if (sex == "女") { ssex = Convert.ToBoolean("false"); } Console.Write("请输入更改后的成绩:"); decimal sscore = decimal.Parse(Console.ReadLine()); SqlCommand cmdadd = student.CreateCommand(); cmdadd.CommandText = "update student set Name='" + sname + "',Birth='" + sbirth + "',Sex='" + ssex + "',Score=" + sscore + "where Code=" + scode;//输入添加命令 student.Open(); cmdadd.ExecuteNonQuery();//执行命令 Console.Clear(); Console.WriteLine("修改成功!"); student.Close(); } #endregion #endregion #region 3.提示用户操作是否成功,刷新数据,回到2等待用户操作 cmd.CommandText = "select*from student"; student.Open(); SqlDataReader table1 = cmd.ExecuteReader(); if (table1.HasRows) { while (table1.Read()) { string date = Convert.ToDateTime(table1["Birth"]).ToString("yyyy年MM月dd日"); string sex = ((bool)table1["Sex"]) ? "男" : "女"; string grade = ((decimal)table1["Score"]).ToString("#.##"); Console.WriteLine("学号:{0}\t姓名:{1}\t生日:{2}\t性别:{3}\t成绩:{4}", table1["Code"], table1["Name"], date, sex, grade); } } student.Close(); Console.WriteLine(); #endregion } Console.ReadLine();