2024年4月11日发(作者:)
调用SQL Server 存储过程
使用存储过程的优点:
1.存储过程在数据库中经过了预编译,相比而言比函数和纯SQL执行的效率更高
2.存储过程在网络上传输的数据量比纯SQL语句少.
3.存储过程隐藏数据执行的细节,使数据更加安全
数据库的基本操作分为增,删,改,查四种,其中增删改三种是对数据进行操作, 是直接影响数据,
执行操作后,会返回受影响的行数, 但是查不同,查并没有影响到数据本身, 只是返回了一个结
果集展示给用户,因此可以将增删改分为一类,查为一类 . 而在中调用SQL的方式
也有所不同..
增删改:
在执行普通的SQL语句时,会直接使用SqlConnection类和SqlCommand类,
SqlConnection 是SQL Server数据库的链接类(不能被继承), 可以创建一个对象来链接数据库,
SqlCommand类表示对SQL Server数据库执行操作, 同样不能被继承. 使用这两个类必须要导
入环境, using ent;
SqlConnection类的使用, 创建一个数据库链接对象,提供链接方式作构造参数, 如下面:
private static string sql=” server=服务器名字;databsae=链接的数据库; uid=sa; pwd=登录
密码”;//链接方式
public static SqlConnectio co=new SqlConnectio(sql);//创建一个链接对象
类的使用, 创建一个执行对象, 设置属性的相关属性执行不同的语句和方式 常用属性方
法如下:
CommandType属性设置如何解释SQL语句
CommandText属性设置执行的SQL语句内容
Connection属性设置执行的链接对象
ExecuteNonQuery()方法返回受影响的行数
ExecuteScalar()方法执行查询结果返回第一行第一列,忽略其他结果
ExecuteReader()方法,提交
CommandText属性
并返回一个SqlDataReader类
的对象
下面通过几个示例讲解下使用方法:
Demo_DB 里面有一张userInfo表 数据如下:
存储过程代码如下: (删除表中Id最大的一条记录)
窗体如图:
一. 调用增删改的存储过程
1. 无参数示例:
Button1代码如下:
private void button1_Click(object sender, EventArgs e)
{
string sql = "proc_DeleteLastUser";//过程名字
SqlCommand cmd = new SqlCommand();//执行对象
dType = Procedure;//设置解释方法为存储过程
dText = sql;//设置执行语句
tion = ;//执行的链接 为SqlConnection对
象
();//打开数据库
int count = (int)eNonQuery();//返回受影响行数
if (count > 0)
{
("执行成功!");
}
();//关闭
}
运行结果:


发布评论