关闭

c#操作sql server 2000数据库的类。

1076人阅读 评论(0) 收藏 举报

using System;
using System.Configuration;
using System.Web;
using System.Data.SqlClient ;
using System.Data;

namespace RFID.PublicClass.DataBase
{
 /// <summary>
 /// SqlDB 的摘要说明。
 /// </summary>
 public class SqlDB
 {
  private const string CONKEY = "SqlConnStr";
  private SqlConnection SqlConn=null;
 
  //HttpContext.Current

  /// <summary>
  /// 构造函数
  /// </summary>
  public SqlDB()
  {
   try
   {
    string ConnStr="server=202.200.119.111;database=RFID;uid=sa;pwd=sa";
    SqlConn  = new SqlConnection(ConnStr);
    SqlConn.Open ();
   }
   catch
   {
    
   }
  }
  /// <summary>
  /// 析构函数
  /// </summary>
  ~SqlDB()
  {
   CloseConn();
  }
  /// <summary>
  /// 返回Connection对象
  /// </summary>
  /// <returns></returns>
  public SqlConnection GetConnection()
  {   
   return(SqlConn);
  }
  /// <summary>
  /// 返回Command对象
  /// </summary>
  /// <param name="strsql"></param>
  /// <returns></returns>
  public SqlCommand GetCommand(string strsql)
  {
 
   try
   {
    SqlCommand  SqlComm=new SqlCommand( strsql, SqlConn);

    return(SqlComm);
   }
   catch
   {
    return(null);
   }
  }
  /// <summary>
  ///返回DataAdapter对象
  /// </summary>
  /// <param name="strsql"></param>
  /// <returns></returns>
  public SqlDataAdapter GetDataAdapter(string strsql)
  {
   SqlDataAdapter adp = null;
   try
   {
    adp= new SqlDataAdapter(strsql, SqlConn);
    return(adp);
   }
   catch
   {
    adp = null;
    return(adp);
   }

  }
  /// <summary>
  /// 返回DataReader对象
  /// </summary>
  /// <param name="strsql"></param>
  /// <returns></returns>
  public SqlDataReader GetDataReader( string strsql)
  {
   SqlCommand Comm = null;
   SqlDataReader reader;
   Comm = GetCommand(strsql);
   try
   {
    reader = Comm.ExecuteReader();
   }
   catch
   {
    reader = null;
   }
   return(reader);
  }
  
  /// <summary>
  /// 执行SQL,返回结果值;
  /// </summary>
  /// <param name="strsql"></param>
  /// <returns></returns>
  public string GetDataValue(string strsql)
  {   try
   {
   SqlCommand  Comm;
   Comm=GetCommand(strsql);

    return(Comm.ExecuteScalar().ToString());
  
   }
   catch
   {
    return("");
   }
              
  }
  /// <summary>
  /// 返回DataSet
  /// </summary>
  /// <param name="strsql"></param>
  /// <param name="datasetname"></param>
  /// <returns></returns>
  public DataSet GetDataSet(string strsql, string datasetname)
  {
   SqlDataAdapter Adpt;
   DataSet dsData= new DataSet() ;
   Adpt = GetDataAdapter(strsql);
   try
   {
    Adpt.Fill(dsData, datasetname); 
   }
   catch
   { 
    dsData=null;
   }
   Adpt.Dispose ();
   return (dsData);
  }
  /// <summary>
  /// 执行SQL插入、更新、删除操作
  /// </summary>
  /// <param name="strsql"></param>
  /// <returns></returns>
  public bool Execute(string strsql)
  {
   SqlCommand Comm;
   Comm = GetCommand(strsql);
   try
   {
    Comm.ExecuteNonQuery();
    return(true);
   }
   catch
   {
    return(false);
   }
  }
  /// <summary>
  ///
  /// </summary>
  /// <param name="strsql"></param>
  /// <param name="Parameters"></param>
  /// <param name="DataByte"></param>
  /// <returns></returns>
  public bool Execute(string strsql,string Parameters,byte [] DataByte)
  {
   SqlCommand Comm;
   Comm = GetCommand(strsql);
   try
   {
    Comm.Parameters.Add(Parameters, DataByte);
    Comm.ExecuteNonQuery();
    return(true);
   }
   catch
   {
    return(false);
   }
  }
  //一种执行存储过程的方法
  public bool Execute(string StorageName,string[][] Params)

  {   SqlCommand comm=new SqlCommand();
   comm.Connection = SqlConn;
   comm.CommandType=CommandType.StoredProcedure;
   comm.CommandText=StorageName;
   try
   {
    int count = Params.Length;
    for(int i=0;i<count;i++)
    {
     comm.Parameters.Add(Params[i][0],Params[i][1]).Value = Params[i][2];

    }
                comm.ExecuteNonQuery();
    return(true);

   }
   catch
   {return (false);
   
   }
  }
  //另外一种执行存储过程的方法
  public bool ExecutePro(string StorageName,SqlParameter[] paras)
  {
   SqlCommand comm = new SqlCommand();
   comm.Connection = SqlConn;
   comm.CommandText = StorageName;
   comm.CommandType = CommandType.StoredProcedure;
  try 
  {
   foreach(SqlParameter para in paras)
   {
    comm.Parameters.Add(para);
   }
   comm.ExecuteNonQuery();
   comm.Parameters.Clear();
   comm.Dispose();
   comm = null;
   return(true);
  
  }
  catch(Exception ex)
  {   string err=ex.Message;
    return (false);
  }
  }
 
  public void CloseConn()
  {
   try
   {
    if(SqlConn.ConnectionString !=null)
    {
     SqlConn.Close ();
     SqlConn.Dispose ();
    }
   }
   catch
   {   }
  }
 }
}

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:157561次
    • 积分:1972
    • 等级:
    • 排名:千里之外
    • 原创:43篇
    • 转载:10篇
    • 译文:0篇
    • 评论:24条
    文章分类