c#之执行SQL存储过程
来源:互联网 发布:nodejs高级编程 中文 编辑:程序博客网 时间:2024/06/08 02:46
目的:通过C#.NET调用SQL Server数据库中定义的存储过程。
示例一:
存储过程名:sp_login
输入参数1:@username nvarchar(50)
输入参数2:@password nvarchar(50)
输出参数:@nickname nvarchar(50)
返回值:@retval int
using (SqlConnection sqlConn = new SqlConnection("Data Source=(local);Initial Catalog=EG;User ID=user;Password=123456")){ sqlConn.Open(); SqlCommand sqlCommand = new SqlCommand("sp_login", sqlConn); sqlCommand.CommandType = System.Data.CommandType.StoredProcedure; sqlCommand.Parameters.Add(new SqlParameter("@username", System.Data.SqlDbType.NVarChar)); sqlCommand.Parameters["@username"].Value = "user01"; sqlCommand.Parameters.Add(new SqlParameter("@password", System.Data.SqlDbType.NVarChar)); sqlCommand.Parameters["@password"].Value = "password"; sqlCommand.Parameters.Add(new SqlParameter("@nickname", System.Data.SqlDbType.NVarChar, 50));// 注意:对于输出参数,必须指定参数的尺寸 sqlCommand.Parameters["@nickname"].Direction = ParameterDirection.Output; sqlCommand.Parameters.Add(new SqlParameter("@retval", System.Data.SqlDbType.Int)); sqlCommand.Parameters["@retval"].Direction = ParameterDirection.ReturnValue; sqlCommand.ExecuteNonQuery(); // 开始执行存储过程 // 读取返回值及输出参数的值 int retval = (int)sqlCommand.Parameters["@retval"].Value; string nickname = (string)sqlCommand.Parameters["@nickname"].Value;}
示例二:
存储过程名:sp_report
输入参数1:@max int
输入参数2:@min int
输出一张表
using (SqlConnection sqlConn = new SqlConnection("Data Source=(local);Initial Catalog=EG;User ID=user;Password=123456")){ sqlConn.Open(); SqlCommand sqlCommand = new SqlCommand("sp_report", sqlConn); sqlCommand.CommandType = System.Data.CommandType.StoredProcedure; sqlCommand.Parameters.Add(new SqlParameter("@max", System.Data.SqlDbType.Int)); sqlCommand.Parameters["@max"].Value = 10; sqlCommand.Parameters.Add(new SqlParameter("@min", System.Data.SqlDbType.Int)); sqlCommand.Parameters["@min"].Value = 0; SqlDataAdapter adapter = new SqlDataAdapter(sqlCommand); DataTable table = new DataTable("Report"); adapter.Fill(table); // 读取返回的表 for (int i = 0; i < table.Rows.Count; i++) { for (int j = 0; j < table.Columns.Count; j++) { // table.Rows[i][j] } }}
- c#之执行SQL存储过程
- C#执行SQL存储过程
- C#执行SQL存储过程返回表
- C#执行存储过程
- C# 执行存储过程
- C# 执行存储过程
- c#执行存储过程
- SQL执行存储过程
- c#存储过程,返回记录集和执行sql语句
- C#中连接SQL Server数据库、执行存储过程
- C#执行存储过程实例
- C#执行存储过程实例
- C#中执行存储过程
- c#中执行存储过程
- C#如何执行存储过程
- C# 执行mysql 存储过程
- 执行存储过程+sql>>excel
- 定时执行sql存储过程
- 浅说机器学习中“迭代法”
- js中调用AS莫名其妙的错误,不得使用的关键词
- iOS7新特征汇总[04]新特征介绍4
- ArcGIS Server 10.1新特性-- 发布服务
- Handling IRPs: Definition 2: IRP as a Thread-Independent Call Stack
- c#之执行SQL存储过程
- python 抓取腾讯微博数据并做简单的分析
- 数据结构要点归纳总结(转)
- Error: C3065E: type of input file 'XXX' unknown——已解决!
- Handling IRPs 3: Passing an IRP to the Next Lower Driver
- Handling IRPs 4: Completing an IRP
- 开发者所需要知道的iOS7 SDK新特性
- Handling IRPs 5: Synchronous I/O Responses
- 访问存储设备