虽然有现成的封装方法,但是一定要知道的七大步骤。最重要的是不能忘记封装的时候,返回值
的处理!宇宙超级无敌巨重要!话不多说,直接上代码!这里使用的是SQL server数据库.
//创建链接字符串 //string str = "data source=.;initial catalog=schoolDB;user ID=sa ;password=sa2008"; string str = "server=.;database=schoolDB; uid=sa;pwd=sa2008"; //2创建连接对象 SqlConnection conn = new SqlConnection(str); //3打开连接 conn.Open(); //4创建sql语句 // string sql = "insert into Course values('c#开发程序')"; string sql = "select *from Students"; //5创建命令对象 SqlCommand comm = new SqlCommand(sql, conn); //6调用方法,执行数据语句 //返回执行数量单个值,返回类型是object //object obj = comm.ExecuteScalar(); //Console.WriteLine("数据的数量为:" + obj); //6-2执行增删除改,返回结果表示受影响的行数 /*int num = comm.ExecuteNonQuery(); if (num > 0) { Console.WriteLine("新增成功!"); } else { Console.WriteLine("新增失败!"); }*/ //6-3 执行的是返回多个值的select语句 /* SqlDataReader sdr= comm.ExecuteReader(); //循环读取查询结果的每一行 Console.WriteLine("学号\t密码\t姓名"); while (sdr.Read()) { Console.WriteLine("{0}\t{1}\t{2}", sdr["scode"],sdr["sname"],sdr["saddress"]); } sdr.Close(); //7关闭连接 conn.Close(); Console.Read();*/
基础七大步骤摆出来主要是方便理解,理解过后,我们再一次进行封装,就会如有神助,同时注意返回值的处理!!!!
namespace 数据库连接 { //DBhelper的封装 class DBhelper { //创建连接字符串的静态字符串 private static string str = "server=.;database=schoolDB;uid=sa;pwd=sa2008"; //第一个方法,返回单个值 public static object ExecuteScalar(string sql) { //using使用完后会自动释放其中的comm对象,实现程序入口的关闭 using (SqlConnection conn = new SqlConnection(str)) { conn.Open(); SqlCommand comm = new SqlCommand(sql,conn); return comm.ExecuteScalar(); } } public static int ExecuteNonQuery(string sql) { //查询返回受影响的行数 using (SqlConnection conn = new SqlConnection(str)) { conn.Open(); SqlCommand comm = new SqlCommand(sql, conn); return comm.ExecuteNonQuery(); } } public static SqlDataReader ExecuteReader(string sql) { //查询返回数据库里面的多个参数,不能使用上面两个using的方法关闭 SqlConnection conn = new SqlConnection(str); conn.Open(); SqlCommand comm = new SqlCommand(sql, conn); return comm.ExecuteReader(CommandBehavior.CloseConnection); //在调用之前倒包,在datareader对象关闭的同时,让数据库连接也随之关闭 倒包:using system data; } } }