在.NET中用存储过程执行SQL语句
2010-04-20 16:40
381 查看
存储过程:是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程。by google
存储过程执行效率比单独的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
}
存储过程执行效率比单独的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
}
相关文章推荐
- MySql带参数的存储过程编写(动态执行SQL语句)
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(89)-EF执行SQL语句与存储过程
- MySQL存储过程中实现执行动态SQL语句的方法
- 执行带一个存储过程参数的的SQL语句。
- MySQL 存储过程中执行动态 SQL 语句
- 存储过程————执行拼接的SQL语句的字符串
- 存储过程中执行动态Sql语句
- 存储过程中执行动态Sql语句
- .net 中用存储过程执行SQL
- 在ASP.NET中用存储过程执行SQL语句
- 利用SQL语句创建、修改、执行、删除存储过程
- MySQL 存储过程中执行动态SQL语句的方法
- Asp.Net访问Oracle 数据库 执行SQL语句和调用存储过程
- MySql带参数的存储过程编写(动态执行SQL语句)
- 存储过程中执行动态Sql语句
- .Net_06_创建存储过程的基本语法(Sql 语句)
- 存储过程中用exec执行sql语句问题
- MySQL存储过程详解 mysql 存储过程mysql存储过程详解 1. 存储过程简介 我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored
- 存储过程和T-SQL语句的执行计划重用性比较
- sql存储过程中执行sql语句