在.NET中用儲存過程執行SQL語句
儲存過程執行效率比單獨的SQL語句效率高。
樣編寫儲存過程?儲存過程在SQL Server 2005對應資料庫的可程式設計性目錄下。
比如,建立一個儲存過程
create procedure procNewsSelectNewNews
as
begin
select top 10 n.id,n.title,n.createTime,c.name from news n
inner join category c on n.caId=c.id
order by n.createTime desc
end
執行定義好的儲存過程
exec procNewsSelectNewNews
儲存過程返回的是一張表
public DataTable test(string procName)
{
DataTable dt=new DataTable();
cmd=new SqlCommand(procName,GetConn()); //資料庫連線和連線開閉,都放在了GetConn()方法中
cmd.CommandType=CommandType.StoredProcedure; //定義SQL語句命令型別為儲存過程
using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection));//方法將SQL語句傳送給SqlConnection並生產一個SqlDataReader類物件,該SqlDataReader物件包含SQL命令返回的資料
{ dt.Load(sdr); //load查詢dataread查詢的結果 }
return dt;
}
當一個專案中既要用到SQL語句又要用到儲存過程的時候,而執行SQL語句和執行儲存過程的方法都差不多,就是相差一個CommandType型別,所以如果有這樣的情況,我們可以重構關於SQL語句和儲存過程這兩個方法
public DataTable ExecuteQuery(string sqlText,CommandType ct); //不僅傳入SQL語句還傳入一個命令型別
{
DataTable dt=new DataTable();
cmd=new SqlCommand(sqlText,GetConn());
cmd.CommandType=ct;
using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
{ dt.Load(sdr);}
return dt;
}
查詢方法寫好之後,就可以寫SQL語句或儲存過程的方法了
比如:儲存過程
public DataTable SelectNewNews()
{
return sqlhelper.ExecuteQuery(“儲存過程名”,CommandType.StoredProcedure)
}
SQL語句
public DataTable SelectAll()
{
DataTable dt=new DataTable();
string sql=”select * from news”;
dt=sqlhelper.ExecuteQuery(sql,CommandType.Text);·
return dt
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-660262/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Entity Framework Code First執行SQL語句、檢視及儲存過程FrameworkSQL儲存過程
- mysql執行sql語句過程MySql
- asp.net分頁的SQL語句及儲存過程ASP.NETSQL儲存過程
- EF中使用SQL語句或儲存過程SQL儲存過程
- SQL語句執行過程詳解SQL
- CoreData執行過程的sql語句SQL
- sql語句執行過程小結SQL
- 剖析SQL語句的執行過程SQL
- Oracle SQL 語句的執行過程OracleSQL
- 儲存過程 與 SQL Server語句大比拼儲存過程SQLServer
- 深入解讀MySQL InnoDB儲存引擎Update語句執行過程MySql儲存引擎
- 一條sql語句的執行過程SQL
- 淺談SQL語句的執行過程SQL
- 10_SQL語句執行過程剖析SQL
- 理解oracle執行sql語句的過程OracleSQL
- 15個常用sql語句 分支 迴圈 子查詢 儲存過程 事務 常用函式 sql語句執行過程(轉載備用)SQL儲存過程函式
- 通過SQL語句提取儲存過程中的內容SQL儲存過程
- Oracle資料庫SQL語句執行過程Oracle資料庫SQL
- GaussDB SQL查詢語句執行過程解析SQL
- [MSSQL]sql 儲存過程定時執行方法SQL儲存過程
- MySQL儲存過程語句及呼叫MySql儲存過程
- ORACLE sql 語句的執行過程(SQL效能調整)OracleSQL
- sql server儲存過程語法SQLServer儲存過程
- oracle 儲存過程以及plsql語句塊Oracle儲存過程SQL
- Oracle 儲存過程中的DDL語句Oracle儲存過程
- .Net執行SQL/儲存過程之易用輕量工具SQL儲存過程
- MySQL探祕(二):SQL語句執行過程詳解MySql
- [20170703]SQL語句分析執行過程.txtSQL
- 儲存過程中檢視sql執行計劃的方法儲存過程SQL
- 通過儲存過程執行通過DBLINK的查詢語句失敗-單個語句成功--ORA-00604儲存過程
- PostgreSQL獲取建表語句儲存過程SQL儲存過程
- C++通過occi執行select語句、儲存過程、函式,取cursor值示例C++儲存過程函式
- 儲存過程中巢狀儲存過程的變數執行方式儲存過程巢狀變數
- 如何查詢一個儲存過程是否在執行儲存過程
- /*動態執行儲存過程DEMO*/儲存過程
- Mybatis原始碼分析(五)探究SQL語句的執行過程MyBatis原始碼SQL
- oracle儲存過程(procedure)中執行動態SQL小記Oracle儲存過程SQL
- 啟動SQL SERVER時自動執行儲存過程(轉)SQLServer儲存過程