C#操作SqlServer数据库存储过程

操作存储过程

复制代码
##### 1. 无参数存储过程

```cs
1. 连接数据库
string connString = @"Server=192.168.113.74,51187\SQLEXPRESS;DataBase=SMDB;Uid=sa;Pwd=123456";
conn = new SqlConnection(connString);
conn.Open();
//2 定义存储过程名称
string proceName = "usp_ScoreQuery1";
//3 创建一个指令对象
SqlCommand cmd = new SqlCommand();
//4 添加执行sql语句和设置连接对象
cmd.CommandText = proceName;// 添加执行的sql
cmd.Connection = conn; //设置连接对象
//5 执行命令类型
cmd.CommandType = System.Data.CommandType.StoredProcedure;
//6 执行语句
SqlDataReader dr = cmd.ExecuteReader();
// 关闭数据库
conn.Close();
```
复制代码
##### 2. 带输出(输入)参数存储过程

```cs
1. 连接数据库
string connString = @"Server=192.168.113.74,51187\SQLEXPRESS;DataBase=SMDB;Uid=sa;Pwd=123456";
conn = new SqlConnection(connString);
conn.Open();
//2 定义存储过程名称
string proceName = "usp_ScoreQuery1";

//3 创建一个指令对象
SqlCommand cmd = new SqlCommand();
//4 添加执行sql语句和设置连接对象
cmd.CommandText = proceName;// 添加执行的sql
cmd.Connection = conn; //设置连接对象
 //5 设置参数
 //定义参数方法1
 SqlParameter csharp = new SqlParameter();
 csharp.ParameterName = "@CSharp";// 设置csharp是存储过程中对应@CSharp输入参数
 csharp.Direction = ParameterDirection.output;//设置为输出参数
 csharp.Value = 180;// 设置参数的值为180
 csharp.SqlDbType = SqlDbType.Int; //设置参数类型
 cmd.Parameters.Add(csharp); // 把输入参数添加到参数列表里面
 // 定义参数方法2 @SqlserverDB
cmd.Parameters.Add(new SqlParameter() { 
    ParameterName = "@SqlserverDB",
    Direction = ParameterDirection.Input,
    Value = 180,
    SqlDbType = SqlDbType.Int,
});
//6 执行命令类型
cmd.CommandType = System.Data.CommandType.StoredProcedure;
//7 执行语句
SqlDataReader dr = cmd.ExecuteReader();
// 关闭数据库
conn.Close();
//8 获取输出参数(返回值)
messageBox.Show(cmd.Parameters.tostring());
```
相关推荐
x-cmd几秒前
[260311] x-cmd v0.8.8:新增一键卸载 OpenClaw 命令,AI 命令补全回归,内网服务器一键部署 x-cmd
运维·服务器·人工智能·ai·ssh·x-cmd·openclaw
杨云龙UP几秒前
Oracle与MySQL数据库运行状态快速检查指南
数据库·mysql·oracle
rrrjqy几秒前
MySQL事务深度解析:从ACID特性到隔离级别实战
数据库·mysql·oracle
新时代Java农民工1 分钟前
刚安装好的IDEA在插件库里面搜索不到要安装的插件
java·ide
Saniffer_SH2 分钟前
【高清视频】企业级NVMe SSD (E3.S, U.2)和消费类M.2 SSD拆解分析
服务器·网络·数据库·驱动开发·测试工具·fpga开发·压力测试
顶点多余2 分钟前
Mysql数据库基础
linux·数据库·mysql
周末吃鱼3 分钟前
复习-JVM何时结束
运维·服务器·jvm
好家伙VCC4 分钟前
# Deno框架实战:从零搭建一个安全、高效的Node.js替代项目 在现代
java·python·安全·node.js
茶杯梦轩4 分钟前
面试常问:TCP与HTTP的Keep-Alive机制大揭秘
服务器·网络协议·面试
小吴编程之路5 分钟前
MySQL 事务管理核心解析:从 ACID 到 MVCC 深度理解
数据库·mysql