C# 写的数据库操作类

using System;
using System.Data;
using System.Data.SqlClient;

namespace news.common
{
 
/**
  * -----------------
  * 数据库联接 / 操作类
  * 2005-03-18 创建
  * Ryan_bin@126.com
  * ----------------
  
*/

 
public class DBClass
 {
  
/*----全局变量定义------*/

  
private SqlConnection     conn;    
  
private SqlCommand    comm;    
  
public  SqlDataReader         dr;
  
public  DataSet                      ds;
  
public  SqlDataAdapter      dad;
  
private string                         sql;
  
private string                 connStr;   /* 数据库联接字符串 */
  
private string              errInfo ="";
  
/*----------------------*/

  
public DBClass()
  {
  }
  
/* 数据库操作异常信息 只读属性 */
  
public string ErrInfo
  {
   
get
   {
    
return errInfo;
   }
  }
  
/* 要操作的Sql语句 */
  
public string Sql
  {
   
get{
    
return sql;
   }
   
set{
    sql 
= value;
   }
  }
  
/* 数据库链接字符串 */
  
public string ConnStr
  {
   
get
   {
    
return connStr;
   }
   
set
   {
    connStr 
= value;
   }
  }
  
private void connDb()
  {
   conn 
= new SqlConnection(connStr);
   
try
   {
    conn.Open();
   }
   
catch(SqlException e)
   {
    
for(int i=0;i<e.Errors.Count;i++)
    {
     errInfo 
+= "错误序号:"+i+"\n"+
                       
"出错信息:"+e.Errors[i].Message+"\n"+
                       
"出错来源:"+e.Errors[i].Source+"\n"+
                       
"程序:"+e.Errors[i].Procedure;
    }
    conn.Close();
   }
  }
  
/* 用于窗体绑定 */
  
public void dataView()
  {
   connDb();
   dad 
= new SqlDataAdapter(sql,conn);
   ds  
= new DataSet();
   dad.Fill(ds);
   DataView dv 
= new DataView(ds.Tables[0]);
  }
  
/* 执行SQL语句,返回结果 */
  
public void readerData()
  {
   connDb();
   comm 
= new SqlCommand(sql,conn);
   dr   
= comm.ExecuteReader();
  }
  
/* 执行SQL语句,不返回结果 */
  
public void exeSql()
  {
   connDb();
   comm 
= new SqlCommand(sql,conn);
   comm.ExecuteNonQuery();
  }
  
/* 关闭链接 */
  
public void clear()
  {
   conn.Close();
  }
 }
}

posted on 2005-09-03 10:37  小鸟飞飞  阅读(334)  评论(0)    收藏  举报

导航