精选三楼楼长的OA中的SQL数据库连接类[执行存储过程],如果是其它数据库,或者要执行sql语句,请参考http://www.cnblogs.com/leeon/archive/2004/12/09/75053.html
using System;
using System.ComponentModel;
using System.Collections;
using System.Diagnostics;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDA1dmJtVXVaMmxt)
{
![]()
/// 通用的数据库处理类,通过ado.net与数据库连接
/// </summary>
![]()
{
// 连接数据源
private SqlConnection con;
![]()
/// 执行存储过程
/// </summary>
/// <param name="procName">存储过程的名称</param>
/// <returns>返回存储过程返回值</returns>
![]()
{
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
SqlCommand cmd
= CreateCommand(procName, null);
cmd.ExecuteNonQuery();
this.Close();
return (int)cmd.Parameters["ReturnValue"].Value;
}
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
![]()
/// 执行存储过程
/// </summary>
/// <param name="procName">存储过程名称</param>
/// <param name="prams">存储过程所需参数</param>
/// <returns>返回存储过程返回值</returns>
![]()
{
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
SqlCommand cmd
= CreateCommand(procName, prams);
cmd.ExecuteNonQuery();
this.Close();
return (int)cmd.Parameters["ReturnValue"].Value;
}
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
![]()
/// 执行存储过程
/// </summary>
/// <param name="procName">存储过程的名称</param>
/// <param name="dataReader">返回存储过程返回值</param>
![]()
{
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
SqlCommand cmd
= CreateCommand(procName, null);
dataReader = cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
//return (int)cmd.Parameters["ReturnValue"].Value;
}
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
![]()
/// 执行存储过程
/// </summary>
/// <param name="procName">存储过程的名称</param>
/// <param name="prams">存储过程所需参数</param>
/// <param name="dataReader">存储过程所需参数</param>
![]()
{
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
SqlCommand cmd
= CreateCommand(procName, prams);
dataReader = cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
//return (int)cmd.Parameters["ReturnValue"].Value;
}
![]()
/// 创建一个SqlCommand对象以此来执行存储过程
/// </summary>
/// <param name="procName">存储过程的名称</param>
/// <param name="prams">存储过程所需参数</param>
/// <returns>返回SqlCommand对象</returns>
![]()
{
// 确认打开连接
Open();
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
SqlCommand cmd = new SqlCommand(procName, con);
cmd.CommandType = CommandType.StoredProcedure;
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
// 依次把参数传入存储过程
{
foreach (SqlParameter parameter in prams)
cmd.Parameters.Add(parameter);
}
// 加入返回参数
cmd.Parameters.Add(
new SqlParameter("ReturnValue", SqlDbType.Int, 4,
ParameterDirection.ReturnValue, false, 0, 0,
string.Empty, DataRowVersion.Default, null));
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
return cmd;
}
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
![]()
/// 打开数据库连接.
/// </summary>
![]()
{
// 打开数据库连接
{
con = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionString"]);
}
if(con.State ==System.Data.ConnectionState.Closed)
con.Open();
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
}
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
![]()
/// 关闭数据库连接
/// </summary>
![]()
{
if (con != null)
con.Close();
}
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
![]()
/// 释放资源
/// </summary>
![]()
{
// 确认连接是否已经关闭
{
con.Dispose();
con = null;
}
}
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
![]()
/// 传入输入参数
/// </summary>
/// <param name="ParamName">存储过程名称</param>
/// <param name="DbType">参数类型</param></param>
/// <param name="Size">参数大小</param>
/// <param name="Value">参数值</param>
/// <returns>新的 parameter 对象</returns>
![]()
{
return MakeParam(ParamName, DbType, Size, ParameterDirection.Input, Value);
}
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
![]()
/// 传入返回值参数
/// </summary>
/// <param name="ParamName">存储过程名称</param>
/// <param name="DbType">参数类型</param>
/// <param name="Size">参数大小</param>
/// <returns>新的 parameter 对象</returns>
![]()
{
return MakeParam(ParamName, DbType, Size, ParameterDirection.Output, null);
}
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
![]()
/// 传入返回值参数
/// </summary>
/// <param name="ParamName">存储过程名称</param>
/// <param name="DbType">参数类型</param>
/// <param name="Size">参数大小</param>
/// <returns>新的 parameter 对象</returns>
public SqlParameter MakeReturnParam(string ParamName, SqlDbType DbType, int Size)
{
return MakeParam(ParamName, DbType, Size, ParameterDirection.ReturnValue, null);
}
![]()
/// 生成存储过程参数
/// </summary>
/// <param name="ParamName">存储过程名称</param>
/// <param name="DbType">参数类型</param>
/// <param name="Size">参数大小</param>
/// <param name="Direction">参数方向</param>
/// <param name="Value">参数值</param>
/// <returns>新的 parameter 对象</returns>
![]()
{
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
SqlParameter param;
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
if(Size > 0)
param = new SqlParameter(ParamName, DbType, Size);
else
param = new SqlParameter(ParamName, DbType);
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
param.Direction = Direction;
if (!(Direction == ParameterDirection.Output && Value == null))
param.Value = Value;
![SQL数据库连接类[执行存储过程] SQL数据库连接类[执行存储过程]](/default/index/img?u=L2RlZmF1bHQvaW5kZXgvaW1nP3U9TDBsdFlXZGxjeTlQZFhSc2FXNXBibWRKYm1ScFkyRjBiM0p6TDBsdVFteHZZMnN1WjJsbQ==)
return param;
}
}
}
相关文章:
-
2022-12-23
-
2021-08-06
-
2022-12-23
-
2022-12-23
-
2021-07-11
-
2021-11-15
-
2021-09-04
-
2021-09-04
猜你喜欢
-
2022-01-14
-
2022-01-23
-
2022-12-23
-
2021-12-02
-
2022-12-23
-
2022-12-23
-
2021-12-13
相关资源
-
下载
2023-01-08
-
下载
2022-12-30
-
下载
2022-12-04