

using ?System;
using ?System.Data;
using ?System.Configuration;
using ?System.Web;
using ?System.Web.Security;
using ?System.Web.UI;
using ?System.Web.UI.WebControls;
using ?System.Web.UI.WebControls.WebParts;
using ?System.Web.UI.HtmlControls;
using ?System.Data.SqlClient;
/// ? <summary>
/// ?SqlHelper?的摘要說明
/// ? </summary>
public ? class ?SqlHelper
{
???? private ? static ? readonly ? string ?strConn? = ?ConfigurationManager.ConnectionStrings[ " TangCompanyConn " ].ConnectionString;
???? private ? static ? readonly ? string ?strName? = ?ConfigurationManager.AppSettings[ " userName " ].ToString();
???? private ? static ? readonly ? string ?strPass? = ?ConfigurationManager.AppSettings[ " userPass " ].ToString();
???? public ?SqlHelper()
????{
???????? //
???????? // ?TODO:?在此處添加構造函數邏輯
???????? //
????}
???? public ? static ?SqlDataReader?ExcuteRead( string ?nText,?CommandType?nType,?SqlParameter[]?paras)?{
????????????????SqlConnection?conn? = ? new ?SqlConnection(strConn);
????????
????????????SqlCommand?cmd? = ? new ?SqlCommand();
???????????? try
????????????{
????????????????PrepareCommand(conn,?cmd,? null ,?nType,?nText,?paras);
????????????????SqlDataReader?dr? = ?cmd.ExecuteReader(CommandBehavior.CloseConnection);
????????????????cmd.Parameters.Clear();
???????????????? return ?dr;
???????????????
????????????}
???????????? catch ?(SqlException?ex)
????????????{
???????????????? throw ? new ?Exception(ex.Message,?ex);
????????????}
????????
????
????}
???? public ? static ? int ?ExcuteNonQurey( string ?nText,?CommandType?nType,?SqlParameter[]?paras)?{
????????SqlCommand?cmd? = ? new ?SqlCommand();
???????? using ?(SqlConnection?conn? = ? new ?SqlConnection(strConn))?{
????????????PrepareCommand(conn,?cmd,? null ,?nType,?nText,?paras);
???????????? int ?rows? = ?cmd.ExecuteNonQuery();
????????????cmd.Parameters.Clear();
???????????? return ?rows;
????????
????????}
????
????}
???? // 返回第一列第一個object?類型數據?其他的都被省除了
???? public ? static ? object ?ExcuteSclare( string ?nText,?CommandType?nType,?SqlParameter[]?paras)?{
????????SqlCommand?cmd? = ? new ?SqlCommand();
???????? // 利用?.NET?的?GC?機制,應用于實現了?IDisposable????接口的對象?using的作用
???????? using ?(SqlConnection?conn? = ? new ?SqlConnection(strConn))
????????{?
????????????PrepareCommand(conn,?cmd,? null ,?nType,?nText,?paras);
???????????? object ?obj? = ?cmd.ExecuteScalar();
????????????cmd.Parameters.Clear();
???????????? return ?obj;
????????}
???????? // using?(定義一個對象)
???????? // {
???????? // ????。。[范圍]。。。 // 當在某個代碼段中使用了類的實例,而希望無論因為什么原因,只要離開了這個代碼段就自動調用這個類實例的Dispose[清除]。
???????? // }
????
????}
???? public ? static ?DataSet?ExcuteReadApdater( string ?nText,?CommandType?nType,?SqlParameter[]?paras)?{
????????SqlConnection?con? = ? new ?SqlConnection(strConn);
????????SqlCommand?cmd? = ? new ?SqlCommand();
????????DataSet?ds? = ? new ?DataSet();
???????? try
????????{
????????????PrepareCommand(con,?cmd,? null ,?nType,?nText,?paras);
????????????SqlDataAdapter?sqlAdapter? = ? new ?SqlDataAdapter(cmd);
????????????sqlAdapter.Fill(ds);
????????????cmd.Parameters.Clear();
????????????con.Close();
???????????? return ?ds;
????????}
???????? catch ?(SqlException?ex)?{
???????????? throw ? new ?Exception(ex.Message,?ex);
????????
????????}????
????}
???? public ? static ? void ?PrepareCommand(SqlConnection?con,?SqlCommand?cmd,?SqlTransaction?trans,?CommandType?nType,? string ?nText,?SqlParameter[]?paras)?
????{??
????????
???????? if ?(con.State? != ?ConnectionState.Open)
????????????con.Open();
???????
????????cmd.Connection? = ?con;
????????cmd.CommandText? = ?nText;
???????? if ?(trans? != ? null )?{
????????????cmd.Transaction? = ?trans;?
????????}
????????cmd.CommandType? = ?nType;
???????? if ?(paras? != ? null )?{
???????????? foreach ?(SqlParameter?para? in ?paras)?{
????????????????cmd.Parameters.Add(para);????????????
????????????}????????
????????
????????}
????}
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
