mysql链接sqlserver_数据库链接 mysql,sqlserver

这个类库提供了一个名为 `sqlserver` 的接口,用于处理 SQL Server 数据库的连接、命令执行、参数管理和数据集获取。它包含了创建数据库连接、执行 SQL 查询、存储过程、添加输入和输出参数的方法,并且支持数据集的读取和非查询操作。此外,还提供了错误处理机制。
摘要由CSDN通过智能技术生成

public classsqlserver : IDataBase

{internalSqlConnection Link;publicsqlserver()

{

}public sqlserver(stringConnectionStrings)

{this.Link = null;

CreateDataBaseByConnectionStringsName(ConnectionStrings);

}///

///创建数据库连接,传入配置文件字段名///

/// 数据库配置字段

///

private void CreateDataBaseByConnectionStringsName(stringConnectionStringsName)

{

SqlConnection link= newSqlConnection();string ConnectionStrings =ConfigurationManager.ConnectionStrings[ConnectionStringsName].ToString();

link.ConnectionString=ConnectionStrings;try{

link.Open();this.Link =link;

}catch (Exception e) { throw newException(e.Message); }

}public voidCloseDataBase(System.Data.Common.DbConnection Link)

{

SqlConnection Link_=(SqlConnection)Link;if (Link_ != null && Link_.State ==ConnectionState.Open)

{

Link_.Close();

}

}public System.Data.Common.DbCommand GetSqlStringCommand(stringquery)

{

SqlCommand cmd= null;if (Link != null && query != "")

cmd= newSqlCommand(query, Link);returncmd;

}public void AddInParameter(System.Data.Common.DbCommand cmd, string ParmsName, System.Data.DbType ParmsType, objectvalue)

{try{

SqlParameter parameter= newSqlParameter(ParmsName, ParmsType);

parameter.Direction=ParameterDirection.Input;if (value == null)

parameter.Value=DBNull.Value;elseparameter.Value=value;

cmd.Parameters.Add(parameter);

}catch (Exception e) { throw newException(e.Message); }

}publicSystem.Data.DataSet ExecuteDataSet(System.Data.Common.DbCommand cmd_)

{

DataSet ds= null;

SqlCommand cmd= cmd_ asSqlCommand;try{

SqlDataAdapter adapter= newSqlDataAdapter(cmd);

ds= newDataSet();

adapter.Fill(ds);

cmd.Parameters.Clear();

}catch (Exception e) { throw newException(e.Message); }returnds;

}public intExecuteNonQuery(System.Data.Common.DbCommand cmd)

{int returnCount = 0;try{

returnCount=cmd.ExecuteNonQuery();

}catch (Exception e) { throw newException(e.Message); }returnreturnCount;

}///

///创建 DbType 类型///

/// System数据类型

///

privateDbType BuildDbType(Type t)

{switch(t.Name)

{case "Byte":returnDbType.Byte;case "Byte[]":returnDbType.Binary;case "Int32":returnDbType.Int32;case "Int64":returnDbType.Int64;case "UInt16":returnDbType.UInt16;case "UInt32":returnDbType.UInt32;case "UInt64":returnDbType.UInt64;case "Decimal":returnDbType.Decimal;case "Double":returnDbType.Double;case "Guid":returnDbType.Guid;case "Xml":returnDbType.Xml;case "Object":returnDbType.Binary;case "Boolean":returnDbType.Boolean;case "String":returnDbType.String;case "DateTime":returnDbType.DateTime;default:returnDbType.String;

}

}public void AddOutParameter(System.Data.Common.DbCommand cmd, string ParmsName, DbType ParmsType, objectvalue)

{try{

SqlParameter parameter= newSqlParameter(ParmsName, ParmsType);

parameter.Direction=ParameterDirection.Output;if (value == null)

parameter.Value=DBNull.Value;elseparameter.Value=value;

cmd.Parameters.Add(parameter);

}catch (Exception e) { throw newException(e.Message); }

}public System.Data.Common.DbCommand GetStoredProcCommand(stringProcName)

{

SqlCommand cmd= null;if (Link != null && ProcName != "")

{

cmd= newSqlCommand(ProcName, Link);

cmd.CommandType=CommandType.StoredProcedure;

}returncmd;

}public object GetParameterValueOrKeyValue(System.Data.Common.DbCommand cmd, string ParmsName = "")

{

Dictionary dic = null;try{

dic= new Dictionary();foreach (SqlParameter parameter incmd.Parameters)

{if (parameter.Direction ==ParameterDirection.Output)

{

dic.Add(parameter.ParameterName, parameter.Value);

}

}if (dic != null && dic.Count > 0)

{if (ParmsName != "" &&dic.ContainsKey(ParmsName))returndic[ParmsName];

}elsedic= null;

}catch (Exception e) { throw newException(e.Message); }returndic;

}

}//end

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值