这是今天花了一下时间编写的一个ASP.NET(C# ,Framework3.5)连接SQL数据库,执行SQL语句和获取查询返回数据集的类。
写完后自己感觉,肯定这东西状态还很原始,很多高端的需求还应对不上。目前能做的恐怕还只是基本操作,而且实现的还不一定怎么好。
不管怎样,先放上来再说,以后慢慢改。
呃不到1天就做了不少修改。只好修改版本号了:1.0.1
修改内容如下:
类内移除了SqlDataReader类的对象。现在需要在类外定义SqlDataReader空对象并标上ref后,传递给SQLInquire()方法。
为方法加入了注释代码,会显示在IDE的提示中,像系统具有的提示信息那样。原注释移到最末尾更名为附录,以后可能会移除其中多余内容。
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Data; using System.Data.SqlClient; using System.Configuration; /// <summary> ///这是一个自定义的SQL数据库操作类。里面封装了建立数据库连接,和执行SQL语句的对象。 /// </summary> //*************************** // 最后修改日期:01/08/2014 // 程序版本 V1.0.1 //*************************** public class Conn { private SqlConnection conn; // 数据库连接对象 private SqlCommand sc; // 数据库命令执行对象 /// <summary> /// 构造函数 默认 - 从配置文件中获取连接字串 /// </summary> public Conn() { conn = new SqlConnection(ConfigurationManager.AppSettings["Conn"]); conn.Open(); } /// <summary> /// 构造函数 重载1 - 由指定的字串进行连接 /// </summary> /// <param name="Str">数据库连接字符串</param> public Conn(string Str) { conn = new SqlConnection(Str); conn.Open(); } /// <summary> /// 执行数据库修改操作(Insert,Update,Delete) /// </summary> /// <param name="Str">要执行的SQL语句。必须为插入,修改,删除这三种之一。</param> /// <returns>返回成功操作的行数。返回值为0,表示操作失败。</returns> public int SQLOperate(string Str) { sc = new SqlCommand(Str,conn); return sc.ExecuteNonQuery(); } /// <summary> /// 执行数据库查询操作(Select) /// </summary> /// <param name="Str">要执行的SQL语句,必须为查询。</param> /// <param name="dr">一个实例化SqlDataReader对象的引用。</param> public void SQLInquire(string Str, ref SqlDataReader dr) { sc = new SqlCommand(Str, conn); dr = sc.ExecuteReader(); } /// <summary> /// 关闭数据库连接 /// </summary> public void Close() { if(conn.State == ConnectionState.Open) conn.Close(); } } /* 【备注】 * 需要在网站Web.config文件下的<configuration>节中修改<appSettings />为 * * <appSettings> * <add key="Conn" value="Data Source=.;Initial Catalog=epbase;Integrated Security=True"/> * </appSettings> */ /* 【附录】 *********************************************************** 类名:Conn 功能:连接、打开SQL数据库,执行查询或者增、删、改的SQL命令。 描述:是一个SQL数据库操作类,封装了连接打开数据库的对象,和 执行SQL指令语句的对象,和返回数据库的对象。目的是使数 据库的操作更加简便,好管理。 *********************************************************** ----------------------------------------------------------- 【构造方法】 Conn Obj1 = new Conn(); Conn Obj2 = new Conn("连接字符串"); ----------------------------------------------------------- 【SQLOperate()方法】 功能:用于Insert, Update, Delete 三种指令的执行。 参数:string型,内容为要执行的SQL语句。 返回值:int型,返回成功操作的行数。返回值为0,表示操作失败。 示例: int n = Obj1.SQLOperate("SQL指令字符串"); if (n > 0) Response.Write("操作成功。"); Obj1.Close(); ----------------------------------------------------------- 【SQLInquire()方法】 功能:用于Select指令的查询。 参数:string型,内容为要执行的SQL语句。 参数:SqlDataReader类对象,实例化对象的引用。 返回值:无 示例: SqlDataReader dr = null; Obj2.SQLInquire("SQL指令字符串",ref dr); while (dr.Read()) Response.Write(dr["列名1"] + "|" + dr["列名2"] + "<br />"); dr.Close(); Obj2.Close(); ----------------------------------------------------------- 【Close()方法】 功能:关闭数据库连接。 参数:无 返回值:无 示例:ConnObject.close(); */