我积累的数据库操作类(ASP.NET)
生活随笔
收集整理的這篇文章主要介紹了
我积累的数据库操作类(ASP.NET)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
http://guanvee.cnblogs.com/archive/2006/06/16/427510.html
http://guanvee.cnblogs.com/archive/2006/06/16/427510.html
我積累的數(shù)據(jù)庫(kù)操作類(ASP.NET)
using?System.Web;
using?System.Data.SqlClient;
using?System.Data;
using?System.Configuration;
namespace?op_db
{
/**////?<summary>
///?專門用來(lái)處理與數(shù)據(jù)庫(kù)的操作
///?</summary>
????public?class?db_class
????{
????????成員#region?成員
????????private?SqlConnection?conn=new?SqlConnection();
????????/**////?<summary>
????????///?私有成員
????????///?</summary>
????????private?string?_sql;
????????/**////?<summary>
????????///?屬性:數(shù)據(jù)庫(kù)查詢語(yǔ)句
????????///?</summary>
????????private?string?_er;
????????public?string?er
????????{
????????????get{return?_er;}
????????????
????????}
????????public?string?sql
????????{
????????????get{return?_sql;}
????????????set{_sql=value;}
????????}
????????#endregion
????????函數(shù)#region?函數(shù)
????????/**////?<summary>
????????///?構(gòu)造函數(shù)
????????///?</summary>
????????public?db_class()
????????{
????????????//
????????????//?TODO:?在此處添加構(gòu)造函數(shù)邏輯
????????????//
????????????conn.ConnectionString=System.Configuration.ConfigurationSettings.AppSettings["constr"].ToString();
????????}
????????/**////?<summary>
????????///?析構(gòu)函數(shù)
????????///?</summary>
????????~?db_class()
????????{
????????????if?(conn.State==ConnectionState.Open)
????????????conn.Close();
????????}
????????/**////?<summary>
????????///?打開(kāi)數(shù)據(jù)庫(kù)連接
????????///?</summary>
????????public?void?db_open()
????????{
????????????try
????????????{
????????????????if?(conn.State==ConnectionState.Closed)
????????????????{
????????????????????conn.ConnectionString=System.Configuration.ConfigurationSettings.AppSettings["constr"].ToString();
????????????????????conn.Open();
????????????????}
????????????}
????????????catch(Exception?ex)
????????????{
????????????????//System.Web.HttpContext.Current.Response.Redirect(System.Configuration.ConfigurationSettings.AppSettings["conn_admin"].ToString());
????????????????System.Web.HttpContext.Current.Response.Write(ex.Message);
????????????????System.Web.HttpContext.Current.Response.End();
????????????}
????????}
????????/**////?<summary>
????????///?關(guān)閉數(shù)據(jù)庫(kù)連接
????????///?</summary>
????????public?void?db_close()
????????{
????????????if?(conn.State==ConnectionState.Open){
????????????????conn.Close();
????????????????conn.Dispose();
????????????}
????????}
????????/**////?<summary>
????????///?執(zhí)行非返回型查詢語(yǔ)句
????????///?</summary>
????????///?<returns>是否執(zhí)行成功</returns>
????????public?bool?executesql()
????????{
????????????SqlCommand?cmd=new?SqlCommand(_sql,conn);
????????????this.db_open();
????????????try
????????????{
????????????????cmd.ExecuteNonQuery();
????????????????this.db_close();
????????????????return?true;
????????????}
????????????catch(Exception?ex)
????????????{
????????????????this.db_close();
????????????????System.Web.HttpContext.Current.Response.Write(ex.Message);
????????????????System.Web.HttpContext.Current.Response.End();
????????????????return?false;
????????????}
????????}
????????/**////?<summary>
????????///?執(zhí)行返回datareader的數(shù)據(jù)庫(kù)查詢
????????///?</summary>
????????///?<returns>datareader對(duì)象</returns>
????????public?SqlDataReader?executereader()
????????{
????????????SqlCommand?cmd=new?SqlCommand(_sql,conn);
????????????this.db_open();
????????????SqlDataReader?dr;
????????????try
????????????{
????????????????dr=cmd.ExecuteReader(CommandBehavior.CloseConnection);//參數(shù)表示關(guān)閉datagrid對(duì)象就會(huì)關(guān)閉connection對(duì)象
????????????????if?(dr.HasRows==true)
????????????????{
????????????????????return?dr;
????????????????}
????????????????else
????????????????{
????????????????????_er="數(shù)據(jù)為空";
????????????????????return?null;
????????????????}
????????????}
????????????catch
????????????{
????????????????_er="語(yǔ)句錯(cuò)誤";
????????????????return?null;
????????????}
????????}
????????/**////?<summary>
????????///?將sql語(yǔ)句返回為dataview
????????///?</summary>
????????///?<returns>dataview對(duì)象</returns>
????????public?DataView?executedv()
????????{
????????????System.Data.SqlClient.SqlDataAdapter?da=new?SqlDataAdapter(_sql,conn);
????????????DataSet?ds=new?DataSet();
????????????this.db_open();
????????????try
????????????{
????????????????da.Fill(ds,"tb");
????????????????DataView?dv=new?DataView(ds.Tables["tb"]);
????????????????if?(dv.Count>0)
????????????????{
????????????????????this.db_close();
????????????????????return?dv;
????????????????}
????????????????else
????????????????{
????????????????????this.db_close();
????????????????????_er="數(shù)據(jù)出錯(cuò)";
????????????????????return?null;
????????????????}
????????????}
????????????catch
????????????{
????????????????_er="數(shù)據(jù)出錯(cuò)";
????????????????return?null;
????????????}
????????????finally
????????????{
????????????????this.db_close();
????????????}
????????}
????????/**////?<summary>
????????///?將只返回一條記錄的sql語(yǔ)句執(zhí)行并且返回結(jié)果
????????///?</summary>
????????///?<param?name="def">如果沒(méi)有記錄的話的默認(rèn)值</param>
????????///?<returns>返回結(jié)果為string</returns>
????????
????????public?string?sql2str(string?def)
????????{
????????????string?rr="";
????????????SqlCommand?cmd=new?SqlCommand(_sql,conn);
????????????System.Data.SqlClient.SqlDataReader?dr;
????????????this.db_open();
????????????try
????????????{
????????????????dr=cmd.ExecuteReader(CommandBehavior.CloseConnection);
????????????????if(dr.HasRows)
????????????????{
????????????????????dr.Read();
????????????????????rr=dr[0].ToString();
????????????????????dr.Close();
????????????????????this.db_close();
????????????????}
????????????}
????????????catch
????????????{
????????????????rr="";
????????????}
????????????finally{this.db_close();}
????????????if(rr=="")
????????????????rr=def;
????????????return?rr;
????????}
????????/**////?<summary>
????????///?執(zhí)行返回BOOL的存儲(chǔ)過(guò)程
????????///?</summary>
????????///?<returns>是否執(zhí)行成功</returns>
????????public?bool?exepro()
????????{
????????????this.db_open();
????????????SqlCommand?cmd=new?SqlCommand(_sql,conn);
????????????cmd.CommandType=CommandType.StoredProcedure;
????????????try
????????????{
????????????????cmd.ExecuteNonQuery();
????????????????this.db_close();
????????????????return?true;
????????????}
????????????catch
????????????{
????????????????this.db_close();
????????????????return?false;
????????????}
????????}
????????#endregion
????}
}
http://guanvee.cnblogs.com/archive/2006/06/16/427510.html
我積累的數(shù)據(jù)庫(kù)操作類(ASP.NET)
拿它做了兩個(gè)項(xiàng)目了,感覺(jué)還是很實(shí)用,拿出來(lái)大家一起學(xué)習(xí),都是做項(xiàng)目的時(shí)候想到了就寫(xiě)上,肯定有很多地方需要改進(jìn),大家多指教。
?
using?System.Web;
using?System.Data.SqlClient;
using?System.Data;
using?System.Configuration;
namespace?op_db
{
/**////?<summary>
///?專門用來(lái)處理與數(shù)據(jù)庫(kù)的操作
///?</summary>
????public?class?db_class
????{
????????成員#region?成員
????????private?SqlConnection?conn=new?SqlConnection();
????????/**////?<summary>
????????///?私有成員
????????///?</summary>
????????private?string?_sql;
????????/**////?<summary>
????????///?屬性:數(shù)據(jù)庫(kù)查詢語(yǔ)句
????????///?</summary>
????????private?string?_er;
????????public?string?er
????????{
????????????get{return?_er;}
????????????
????????}
????????public?string?sql
????????{
????????????get{return?_sql;}
????????????set{_sql=value;}
????????}
????????#endregion
????????函數(shù)#region?函數(shù)
????????/**////?<summary>
????????///?構(gòu)造函數(shù)
????????///?</summary>
????????public?db_class()
????????{
????????????//
????????????//?TODO:?在此處添加構(gòu)造函數(shù)邏輯
????????????//
????????????conn.ConnectionString=System.Configuration.ConfigurationSettings.AppSettings["constr"].ToString();
????????}
????????/**////?<summary>
????????///?析構(gòu)函數(shù)
????????///?</summary>
????????~?db_class()
????????{
????????????if?(conn.State==ConnectionState.Open)
????????????conn.Close();
????????}
????????/**////?<summary>
????????///?打開(kāi)數(shù)據(jù)庫(kù)連接
????????///?</summary>
????????public?void?db_open()
????????{
????????????try
????????????{
????????????????if?(conn.State==ConnectionState.Closed)
????????????????{
????????????????????conn.ConnectionString=System.Configuration.ConfigurationSettings.AppSettings["constr"].ToString();
????????????????????conn.Open();
????????????????}
????????????}
????????????catch(Exception?ex)
????????????{
????????????????//System.Web.HttpContext.Current.Response.Redirect(System.Configuration.ConfigurationSettings.AppSettings["conn_admin"].ToString());
????????????????System.Web.HttpContext.Current.Response.Write(ex.Message);
????????????????System.Web.HttpContext.Current.Response.End();
????????????}
????????}
????????/**////?<summary>
????????///?關(guān)閉數(shù)據(jù)庫(kù)連接
????????///?</summary>
????????public?void?db_close()
????????{
????????????if?(conn.State==ConnectionState.Open){
????????????????conn.Close();
????????????????conn.Dispose();
????????????}
????????}
????????/**////?<summary>
????????///?執(zhí)行非返回型查詢語(yǔ)句
????????///?</summary>
????????///?<returns>是否執(zhí)行成功</returns>
????????public?bool?executesql()
????????{
????????????SqlCommand?cmd=new?SqlCommand(_sql,conn);
????????????this.db_open();
????????????try
????????????{
????????????????cmd.ExecuteNonQuery();
????????????????this.db_close();
????????????????return?true;
????????????}
????????????catch(Exception?ex)
????????????{
????????????????this.db_close();
????????????????System.Web.HttpContext.Current.Response.Write(ex.Message);
????????????????System.Web.HttpContext.Current.Response.End();
????????????????return?false;
????????????}
????????}
????????/**////?<summary>
????????///?執(zhí)行返回datareader的數(shù)據(jù)庫(kù)查詢
????????///?</summary>
????????///?<returns>datareader對(duì)象</returns>
????????public?SqlDataReader?executereader()
????????{
????????????SqlCommand?cmd=new?SqlCommand(_sql,conn);
????????????this.db_open();
????????????SqlDataReader?dr;
????????????try
????????????{
????????????????dr=cmd.ExecuteReader(CommandBehavior.CloseConnection);//參數(shù)表示關(guān)閉datagrid對(duì)象就會(huì)關(guān)閉connection對(duì)象
????????????????if?(dr.HasRows==true)
????????????????{
????????????????????return?dr;
????????????????}
????????????????else
????????????????{
????????????????????_er="數(shù)據(jù)為空";
????????????????????return?null;
????????????????}
????????????}
????????????catch
????????????{
????????????????_er="語(yǔ)句錯(cuò)誤";
????????????????return?null;
????????????}
????????}
????????/**////?<summary>
????????///?將sql語(yǔ)句返回為dataview
????????///?</summary>
????????///?<returns>dataview對(duì)象</returns>
????????public?DataView?executedv()
????????{
????????????System.Data.SqlClient.SqlDataAdapter?da=new?SqlDataAdapter(_sql,conn);
????????????DataSet?ds=new?DataSet();
????????????this.db_open();
????????????try
????????????{
????????????????da.Fill(ds,"tb");
????????????????DataView?dv=new?DataView(ds.Tables["tb"]);
????????????????if?(dv.Count>0)
????????????????{
????????????????????this.db_close();
????????????????????return?dv;
????????????????}
????????????????else
????????????????{
????????????????????this.db_close();
????????????????????_er="數(shù)據(jù)出錯(cuò)";
????????????????????return?null;
????????????????}
????????????}
????????????catch
????????????{
????????????????_er="數(shù)據(jù)出錯(cuò)";
????????????????return?null;
????????????}
????????????finally
????????????{
????????????????this.db_close();
????????????}
????????}
????????/**////?<summary>
????????///?將只返回一條記錄的sql語(yǔ)句執(zhí)行并且返回結(jié)果
????????///?</summary>
????????///?<param?name="def">如果沒(méi)有記錄的話的默認(rèn)值</param>
????????///?<returns>返回結(jié)果為string</returns>
????????
????????public?string?sql2str(string?def)
????????{
????????????string?rr="";
????????????SqlCommand?cmd=new?SqlCommand(_sql,conn);
????????????System.Data.SqlClient.SqlDataReader?dr;
????????????this.db_open();
????????????try
????????????{
????????????????dr=cmd.ExecuteReader(CommandBehavior.CloseConnection);
????????????????if(dr.HasRows)
????????????????{
????????????????????dr.Read();
????????????????????rr=dr[0].ToString();
????????????????????dr.Close();
????????????????????this.db_close();
????????????????}
????????????}
????????????catch
????????????{
????????????????rr="";
????????????}
????????????finally{this.db_close();}
????????????if(rr=="")
????????????????rr=def;
????????????return?rr;
????????}
????????/**////?<summary>
????????///?執(zhí)行返回BOOL的存儲(chǔ)過(guò)程
????????///?</summary>
????????///?<returns>是否執(zhí)行成功</returns>
????????public?bool?exepro()
????????{
????????????this.db_open();
????????????SqlCommand?cmd=new?SqlCommand(_sql,conn);
????????????cmd.CommandType=CommandType.StoredProcedure;
????????????try
????????????{
????????????????cmd.ExecuteNonQuery();
????????????????this.db_close();
????????????????return?true;
????????????}
????????????catch
????????????{
????????????????this.db_close();
????????????????return?false;
????????????}
????????}
????????#endregion
????}
}
轉(zhuǎn)載于:https://www.cnblogs.com/smallfa/archive/2007/09/11/889759.html
總結(jié)
以上是生活随笔為你收集整理的我积累的数据库操作类(ASP.NET)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: JSP中的pageEncoding和co
- 下一篇: cnblog如何配置live write