微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

用于SqlServer数据库的SqlServerHelper.cs类,及其调用例子

用于sqlServer数据库sqlServerHelper.cs类,及其调用例子2011-10-13 14:57:05     我来说两句       收藏     我要投稿using System; using System.Collections.Generic; using System.Linq; using System.Text;  using System.Configuration; using System.Data; using System.Data.sqlClient;  namespace JonseTest {   public class sqlServerHelper     {         public static string ConnString = string.Empty;          public static string Conn_Config_Str_Name = string.Empty;          public static string Conn_Server = string.Empty;         public static string Conn_dbname = string.Empty;         public static string Conn_Uid = string.Empty;         public static string Conn_Pwd = string.Empty;          private static string _ConnString         {             get             {                 if (!string.IsNullOrEmpty(ConnString))                     return ConnString;                  object oConn = ConfigurationManager.ConnectionStrings[Conn_Config_Str_Name];                 if (oConn != null && oConn.ToString() != "")                     return oConn.ToString();                  return string.Format(@"server={0};database={1};uid={2};password={3}", Conn_Server, Conn_dbname, Conn_Uid, Conn_Pwd);             }         }          // 取datatable         public static DataTable GetDataTable(out string sError, string ssql)         {             DataTable dt = null;             sError = string.Empty;              try             {                 sqlConnection conn = new sqlConnection(_ConnString);                 sqlCommand comm = new sqlCommand();                 comm.Connection = conn;                 comm.CommandText = ssql;                 sqlDataAdapter dapter = new sqlDataAdapter(comm);                 dt = new DataTable();                 dapter.Fill(dt);             }             catch (Exception ex)             {                 sError = ex.Message;             }              return dt;         }          // 取dataset         public static DataSet GetDataSet(out string sError, string ssql)         {             DataSet ds = null;             sError = string.Empty;              try             {                 sqlConnection conn = new sqlConnection(_ConnString);                 sqlCommand comm = new sqlCommand();                 comm.Connection = conn;                 comm.CommandText = ssql;                 sqlDataAdapter dapter = new sqlDataAdapter(comm);                 ds = new DataSet();                 dapter.Fill(ds);             }             catch (Exception ex)             {                 sError = ex.Message;             }              return ds;         }          // 取某个单一的元素         public static object GetSingle(out string sError, string ssql)         {             DataTable dt = GetDataTable(out sError, ssql);             if (dt != null && dt.Rows.Count > 0)             {                 return dt.Rows[0][0];             }              return null;         }          // 取最大的ID         public static Int32 GetMaxID(out string sError, string sKeyField, string sTableName)         {             DataTable dt = GetDataTable(out sError, "select isnull(max([" + sKeyField + "]),0) as MaxID from [" + sTableName + "]");             if (dt != null && dt.Rows.Count > 0)             {                 return Convert.ToInt32(dt.Rows[0][0].ToString());             }              return 0;         }          // 执行 insert,update,delete 动作,也可以使用事务         public static bool UpdateData(out string sError, string ssql, bool bUseTransaction=false)         {             int iResult = 0;             sError = string.Empty;              if (!bUseTransaction)             {                 try                 {                     sqlConnection conn = new sqlConnection(_ConnString);                     if (conn.State != ConnectionState.Open)                         conn.open();                     sqlCommand comm = new sqlCommand();                     comm.Connection = conn;                     comm.CommandText = ssql;                     iResult = comm.ExecuteNonQuery();                 }                 catch (Exception ex)                 {                     sError = ex.Message;                     iResult = -1;                 }             }             else // 使用事务             {                 sqlTransaction trans = null;                 try                 {                     sqlConnection conn = new sqlConnection(_ConnString);                     if (conn.State != ConnectionState.Open)                         conn.open();                     trans = conn.BeginTransaction();                     sqlCommand cmd = new sqlCommand();                     cmd.Connection = conn;                     cmd.CommandText = ssql;                     cmd.Transaction = trans;                     iResult = cmd.ExecuteNonQuery();                     trans.Commit();                 }                 catch (Exception ex)                 {                     sError = ex.Message;                     iResult = -1;                     trans.Rollback();                 }             }              return iResult > 0;         }      } } 调用方法: 一,先设置数据库连接的信息            //sqlServerHelper.ConnString = @"server=电脑名 或 电脑IP;database=数据库名;uid=数据库登录名;password=数据库登录密码";            sqlServerHelper.Conn_Config_Str_Name = @"ConnString";  // ConnString的信息在 App.Config里设置                       //sqlServerHelper.Conn_Server = @"电脑名 或 电脑IP";            //sqlServerHelper.Conn_dbname = "数据库名";            //sqlServerHelper.Conn_Uid = "数据库登录名";            //sqlServerHelper.Conn_Pwd = "数据库登录密码"; 二, App.Config 

<?xml version="1.0" encoding="utf-8">

 三,  读取 datatable / dataset 数据           private void InitGrid()           {            string ssql = "select * from test";            string sError = string.Empty;            DataTable dt = sqlServerHelper.GetDataTable(out sError, ssql);            //DataSet dt = sqlServerHelper.GetDataSet(out sError, ssql);            dataGridView1.DataSource = dt;            if (!string.IsNullOrEmpty(sError))                Common.displayMsg(this.Text, sError);           } 四,插入,修改删除 数据 (都调用sqlServerHelper.UpdateData方法)            // 插入            string  sError = string.Empty;            int iMaxID = sqlServerHelper.GetMaxID(out sError, "id", "test") + 1;            string ssql = "insert into test select " + iMaxID + ",'name" + iMaxID + "','remark" + iMaxID + "'";            sError = string.Empty;            bool bResult = sqlServerHelper.UpdateData(out sError, ssql, true);            if (bResult)                Common.displayMsg(this.Text, "插入成功");            else                Common.displayMsg(this.Text, sError);            InitGrid();             // 修改            sError = string.Empty;            int iMaxID = sqlServerHelper.GetMaxID(out sError, "test");            string ssql = "update test set name='name_jonse',remark='remark_jonse' where id=" + iMaxID;            sError = string.Empty;            bool bResult = sqlServerHelper.UpdateData(out sError, "修改成功");            else                Common.displayMsg(this.Text, sError);            InitGrid();              // 删除            sError = string.Empty;            int iMaxID = sqlServerHelper.GetMaxID(out sError, "test");            string ssql = "delete from test where id=" + iMaxID;            sError = string.Empty;            bool bResult = sqlServerHelper.UpdateData(out sError, ssql);            if (bResult)                Common.displayMsg(this.Text, "删除成功");            else                Common.displayMsg(this.Text, sError);            InitGrid(); 五,其它        public static void displayMsg(string sCaption, string sMsg)       {           sMsg = sMsg.TrimEnd('!').TrimEnd('!') + " !";           MessageBox.Show(sMsg, sCaption);       }摘自:keenweiwei的专栏

?xml>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐