📄 sqlsubjectaccess.cs
字号:
/*****************************************************************************************************
*
* 作 者: 韩永亮
*
* 创建日期:2006-11-6
*
* 功能描述:数据层,与科目表相关的操作,含有向科目表中添加新记录、显示科目表中的所有信息、更新科目表中的信息等方法。
*
*
* 处理过程:AddnewWarrant:通过SqlHelper.ExecuteNonQuery方法,使用存储过程“usps_proInsWarrant”来向数据库中的“凭证表” 所有字段插入数据。
* ListAllWarrant:通过SqlHelper.ExecuteNonQuery方法,使用存储过程“usps_proSelectWarrant”来将数据库中的“凭证表”所有字段选择出来。
* Update:调用SqlHelper.ExecuteDataset方法,使用存储过程“usps_proUpdateWarrant”来更新数据库中的“凭证表” 所有字段的数据。
*
* 调用说明:实例化DataLayer.SqlWarrtAccess类以后,便可调用其中的方法。
* AddnewWarrant:传入参数为objWarrant,返回值如果大于0则表示添加成功。
* ListAllWarrant:无参数,返回值为DataSet。
* Update:传入参数为objWarrant,返回值为空。
*
*************************************************************************************************/
using System;
using Microsoft.ApplicationBlocks.Data;//导入SqlHelper类
using AbstractLayer;
using System.Data;
using System.Data.SqlClient;
namespace DataLayer
{
/// <summary>
/// SqlSubjectAccess 的摘要说明。
/// </summary>
public class SqlSubjectAccess : IsubjectAccess
{
#region SqlSubjectAccess构造函数
/// <summary>
/// 将接受的_connectionString赋给m_Connection_String
/// </summary>
/// <param name="string">_connectionString</param>
/// <returns></returns>
string m_Connection_String = "server=219.219.221.30; UID=sa; Password=; Database=test";
public SqlSubjectAccess(string _connectionString)
{
m_Connection_String=_connectionString;
}
#endregion
#region 用于向科目表中添加信息:
/// <summary>
/// 向科目表中添加新记录
/// </summary>
/// <param name="AbstractLayer.baseSubject">objSubject</param>
/// <returns>-1则表示添加失败,1则表示添加成功</returns>
public int AddnewSubject (AbstractLayer.baseSubject objSubject )
{
//实例化事务
SqlTransaction objTrans=null;
//实例化链接字符串
SqlConnection myConnection = new SqlConnection(m_Connection_String);
try
{
//打开数据库连接
myConnection.Open();
//开始事务
objTrans= myConnection.BeginTransaction();
//定义SqlParameter数组,其大小为7,数组名为arrParam
SqlParameter [] arrParam=new SqlParameter[7];
//给arrParam参数赋值(参考SqlDataAccess类)
arrParam[0] = new SqlParameter("@subjectID",objSubject . subjectID);
arrParam[1] = new SqlParameter("@subjectName",objSubject .subjectName);
arrParam[2] = new SqlParameter("@memId",objSubject . memId);
arrParam[3] = new SqlParameter("@subjectCat",objSubject . subjectCat);
arrParam[4] = new SqlParameter("@hasSubject ",objSubject . hasSubject);
arrParam[5] = new SqlParameter("@balanceDirec ",objSubject . balanceDirec);
arrParam[6] = new SqlParameter("@quantityUnit ",objSubject . quantityUnit);
//调用SqlHelper.ExecuteNonQuery方法,并使用usps_proInsSubject 存储过程
SqlHelper.ExecuteNonQuery(m_Connection_String,CommandType.StoredProcedure,"usps_proInsSubject",arrParam);
}
catch(Exception Ex)
{
//参数失败,则返回-1,同时回滚事务
objTrans.Rollback();
return -1;
}
finally
{
//关闭连接
myConnection.Close();
}
return 1;//成功的情况
}
#endregion
#region 显示科目表中的所有信息:
/// <summary>
/// 显示科目表中的所有信息
/// </summary>
/// <param name=""></param>
/// <returns>凭科目中所有信息的数据集</returns>
public DataSet ListAllSubject ()
{
DataSet dtStSubject ;
//调用SqlHelper.ExecuteDataset方法,并使用usps_proUpdateSubject 存储过程,并将数据集赋给dtStSubject ;
dtStSubject = SqlHelper.ExecuteDataset("server=127.0.0.1; UID=sa; Password=; Database=test",CommandType.StoredProcedure,"usps_proSelectSubject");
return dtStSubject ;
}
#endregion
#region 更新科目表中的信息:
/// <summary>
/// 更新科目表中的信息
/// </summary>
/// <param name="AbstractLayer.baseWarrant">objSubject</param>
/// <returns></returns>
public void Update(AbstractLayer.baseSubject objSubject )
{
//实例化事务
SqlTransaction objTrans=null;
//实例化链接字符串
SqlConnection myConnection = new SqlConnection(m_Connection_String);
try
{
//打开数据库连接
myConnection.Open();
//开始事务
objTrans= myConnection.BeginTransaction();
//定义SqlParameter数组,其大小为7,数组名为prSubjectParms
SqlParameter [] prAccountParms=new SqlParameter[7];
//给prAccountParms参数赋值(参考SqlDataAccess类)
prAccountParms[0] = new SqlParameter("@subjectID",objSubject . subjectID);
prAccountParms[1] = new SqlParameter("@subjectName",objSubject .subjectName);
prAccountParms[2] = new SqlParameter("@memId",objSubject . memId);
prAccountParms[3] = new SqlParameter("@subjectCat",objSubject . subjectCat);
prAccountParms[4] = new SqlParameter("@hasSubject ",objSubject . hasSubject);
prAccountParms[5] = new SqlParameter("@balanceDirec ",objSubject . balanceDirec);
prAccountParms[6] = new SqlParameter("@quantityUnit ",objSubject . quantityUnit);
//调用SqlHelper.ExecuteNonQuery方法,并使用usps_proUpdateSubject 存储过程
SqlHelper.ExecuteNonQuery(m_Connection_String,CommandType.StoredProcedure,"usps_proUpdateSubject",prAccountParms);
}
catch(Exception Ex)
{
//回滚事务
objTrans.Rollback();
throw;
}
finally
{
//关闭连接
myConnection.Close();
}
}
}
#endregion
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -