針對SQLServer資料庫的通用訪問類

2022-03-12 00:46:34 字數 3983 閱讀 2808

web.config中**

"

connstring

" connectionstring="

server=資料庫服務;database=資料庫名稱;uid=資料庫登入名使用者;pwd=資料庫登入密碼

"/>

現在我們先建乙個sqlhelper類,用來對資料庫的操作

**如下:

using

system;

using

system.collections.generic;

using

system.linq;

using

system.text;

using

system.threading.tasks;

using

system.data;

using

system.data.sqlclient;

using

system.io;

using

system.configuration;

namespace

dal

catch

(exception ex)

finally

}public

static

object getsingleresult(string

sql)

catch

(exception ex)

finally

}public

static sqldatareader getreader(string

sql)

catch

(exception ex)

}public

static dataset getdataset(string

sql)

catch

(exception ex)

finally

}public

static

bool updatebytran(listsqllist)

cmd.transaction.commit();

//提交事務

return

true

; }

catch

(exception ex)

string errorinfo = "

呼叫updatebytran(listsqllist)方法時發生錯:

" +ex.message;

writelog(errorinfo);

throw

newexception(errorinfo);

}finally

conn.close();}}

#endregion

#region 封裝帶引數sql語句執行的各種方法

public

static

int update(string

sql, sqlparameter param)

catch

(exception ex)

finally

}public

static

object getsingleresult(string

sql, sqlparameter param)

catch

(exception ex)

finally

}public

static sqldatareader getreader(string

sql, sqlparameter param)

catch

(exception ex)

}//////

啟用事務提交多條帶引數的sql語句

/// ///

主表sql語句

///主表sql語句對應的引數

///明細表sql語句

///明細表sql語句對應的引數陣列集合

///返回事務是否執行成功

public

static

bool updatebytran(string

mainsql, sqlparameter mainparam,

string detailsql, listdetailparam)

foreach (sqlparameter param in

detailparam)

cmd.transaction.commit();

//提交事務

return

true

; }

catch

(exception ex)

string errorinfo = "

呼叫 public static bool updatebytran(string mainsql, sqlparameter mainparam, string detailsql, listdetailparam)方法時發生錯:

" +ex.message;

writelog(errorinfo);

throw

newexception(errorinfo);

}finally

conn.close();}}

#endregion

#region 封裝呼叫儲存過程執行的各種方法

public

static

int updatebyprocedure(string

spname, sqlparameter param)

catch

(exception ex)

finally

}public

static

object getsingleresultbyprocedure(string

spname, sqlparameter param)

catch

(exception ex)

finally

}public

static sqldatareader getreaderbyprocedure(string

spname, sqlparameter param)

catch

(exception ex)

}//////

啟用事務呼叫帶引數的儲存過程

/// ///

儲存過程名稱

///儲存過程引數陣列集合

///返回基於事務的儲存過程呼叫是否成功

public

static

bool updatebytran(string procedurename, listparamarray)

cmd.transaction.commit();

//提交事務

return

true

; }

catch

(exception ex)

string errorinfo = "

呼叫 public static bool updatebytran(string procedurename,listparamarray)方法時發生錯:

" +ex.message;

writelog(errorinfo);

throw

newexception(errorinfo);

}finally

conn.close();}}

#endregion

#region 其他方法

private

static

void writelog(string

log)

#endregion

}}

writelog方法主要是用來記錄錯誤日誌,把錯誤已文字的方式儲存在根目錄裡方便維護,

同時在sqlhelper要引用system.configuration命名空間,不然的話會報錯。

C 針對SQLserver資料庫獲取資料

using system using system.collections.generic using system.linq using system.text using system.threading.tasks using system.data using system.data.sql...

SQL server自帶的資料庫

select name from sysdatabases 在master資料庫下查詢 前六個是系統自帶的資料庫 master 記錄了系統級別的資訊,包含所有的登陸資訊,系統設定資訊,初始化資訊等 不可以刪除 tempdb 臨時資料庫,儲存臨時表和臨時儲存過程以及儲存空間的要求 model 為使用者...

資料庫的查詢 SQL Server

1 為表起別名as select from classinfo as ui查詢全部列 指定列 為列起別名as select ui.cid from classinfo ui2 查詢前n部分資料 top n 列名 表示檢視前n行 select top3 from classinfo 查詢前三行所有列t...