【C#】SQL数据库助手类2.0(自用)

  1 using System;
  2 using System.Collections.Generic;
  3 using System.Configuration;
  4 using System.Data;
  5 using System.Data.SqlClient;
  6 using System.Text;
  7 
  8 namespace YcTools
  9 {
 10     /// <summary>C# SQL数据库助手类2.0</summary>
 11     public class YSqlHelper
 12     {
 13         //Sql连接语句
 14         /*注意引用System.Configuration
 15          * <connectionStrings>
 16          * <add name="YcSqlCon" 
 17          * connectionString="Data Source=服务器;Initial Catalog=数据库;User ID=登录名;Password=密码" 
 18          * providerName="System.Data.SqlClient"/>
 19          * </connectionStrings>
 20          */
 21         // private string connectionString = ConfigurationManager.ConnectionStrings["YcSqlCon"].ConnectionString;
 22         private string connectionString = "";
 23         public YSqlHelper(string sqlPath)
 24         {
 25             //实例化对应的数据库链接
 26             connectionString = ConfigurationManager.ConnectionStrings[sqlPath].ConnectionString;
 27         }
 28 
 29         /// <summary>执行不带参数的增删改SQL语句或存储过程 ,返回受影响的行数</summary>
 30         public int ExecuteNonQuery(string cmdText)
 31         {
 32             int res = 0;//受影响的行数
 33             using (SqlConnection conn = new SqlConnection(connectionString))
 34             {
 35                 try
 36                 {
 37                     conn.Open();//打开数据库链接
 38                     using (SqlCommand cmd = new SqlCommand(cmdText, conn))
 39                     {
 40                         cmd.CommandType = CommandType.Text;
 41                         res = cmd.ExecuteNonQuery();//执行Sql语句并受影响的行数
 42                     }
 43                 }
 44                 catch
 45                 {
 46 
 47                 }
 48                 finally
 49                 {
 50                     if (conn.State == ConnectionState.Open)//判断连接是否处于打开状态
 51                     {
 52                         conn.Close();//关闭与数据库的链接
 53                     }
 54                 }
 55             }
 56             return res;
 57         }
 58 
 59         /// <summary>  执行带参数的增删改SQL语句或存储过程,返回受影响的行数</summary>
 60         public int ExecuteNonQuery(string cmdText, SqlParameter[] paras)
 61         {
 62             int res = 0;//受影响的行数
 63             using (SqlConnection conn = new SqlConnection(connectionString))
 64             {
 65                 try
 66                 {
 67                     conn.Open();//打开数据库链接
 68                     using (SqlCommand cmd = new SqlCommand(cmdText, conn))
 69                     {
 70                         cmd.CommandType = CommandType.Text;
 71                         cmd.Parameters.AddRange(paras);
 72                         res = cmd.ExecuteNonQuery();//执行Sql语句并受影响的行数
 73                     }
 74                 }
 75                 catch
 76                 {
 77 
 78                 }
 79                 finally
 80                 {
 81                     if (conn.State == ConnectionState.Open)//判断连接是否处于打开状态
 82                     {
 83                         conn.Close();//关闭与数据库的链接
 84                     }
 85                 }
 86             }
 87             return res;
 88         }
 89 
 90         /// <summary> 执行不带参数的查询SQL语句或存储过程,返回DataTable对象</summary>
 91         public DataTable ExecuteQueryDataTable(string cmdText)
 92         {
 93             DataTable dt = new DataTable();
 94             using (SqlConnection conn = new SqlConnection(connectionString))
 95             {
 96                 try
 97                 {
 98                     conn.Open();//打开数据库链接
 99                     using (SqlCommand cmd = new SqlCommand(cmdText, conn))
100                     {
101                         cmd.CommandType = CommandType.Text;
102                         using (SqlDataReader sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
103                         {
104                             dt.Load(sdr);
105                         }
106                     }
107                 }
108                 catch
109                 {
110 
111                 }
112                 finally
113                 {
114                     if (conn.State == ConnectionState.Open)//判断连接是否处于打开状态
115                     {
116                         conn.Close();//关闭与数据库的链接
117                     }
118                 }
119             }
120             return dt;
121         }
122 
123         /// <summary> 执行带参数的查询SQL语句或存储过程,返回DataTable对象</summary>
124         public DataTable ExecuteQueryDataTable(string cmdText, SqlParameter[] paras)
125         {
126             DataTable dt = new DataTable();
127             using (SqlConnection conn = new SqlConnection(connectionString))
128             {
129                 try
130                 {
131                     conn.Open();//打开数据库链接
132                     using (SqlCommand cmd = new SqlCommand(cmdText, conn))
133                     {
134                         cmd.CommandType = CommandType.Text;
135                         cmd.Parameters.AddRange(paras);
136                         using (SqlDataReader sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
137                         {
138                             dt.Load(sdr);
139                         }
140                     }
141                 }
142                 catch
143                 {
144 
145                 }
146                 finally
147                 {
148                     if (conn.State == ConnectionState.Open)//判断连接是否处于打开状态
149                     {
150                         conn.Close();//关闭与数据库的链接
151                     }
152                 }
153             }
154             return dt;
155         }
156 
157         /// <summary> 执行不带参数的查询SQL语句或存储过程,返回DataSet对象</summary>
158         public DataSet ExecuteQueryDataSet(string cmdText)
159         {
160             DataSet ds = new DataSet();
161             using (SqlConnection conn = new SqlConnection(connectionString))
162             {
163                 try
164                 {
165                     conn.Open();//打开数据库链接
166                     using (SqlCommand cmd = new SqlCommand(cmdText, conn))
167                     {
168                         cmd.CommandType = CommandType.Text;
169                         using (SqlDataAdapter da = new SqlDataAdapter(cmd))
170                         {
171                             da.Fill(ds, "ds");
172                         }
173                     }
174                 }
175                 catch
176                 {
177 
178                 }
179                 finally
180                 {
181                     if (conn.State == ConnectionState.Open)//判断连接是否处于打开状态
182                     {
183                         conn.Close();//关闭与数据库的链接
184                     }
185                 }
186             }
187             return ds;
188         }
189 
190         /// <summary> 执行带参数的查询SQL语句或存储过程,返回DataSet对象</summary>
191         public DataSet ExecuteQueryDataSet(string cmdText, SqlParameter[] paras)
192         {
193             DataSet ds = new DataSet();
194             using (SqlConnection conn = new SqlConnection(connectionString))
195             {
196                 try
197                 {
198                     conn.Open();//打开数据库链接
199                     using (SqlCommand cmd = new SqlCommand(cmdText, conn))
200                     {
201                         cmd.CommandType = CommandType.Text;
202                         cmd.Parameters.AddRange(paras);
203                         using (SqlDataAdapter da = new SqlDataAdapter(cmd))
204                         {
205                             da.Fill(ds, "ds");
206                         }
207                     }
208                 }
209                 catch
210                 {
211 
212                 }
213                 finally
214                 {
215                     if (conn.State == ConnectionState.Open)//判断连接是否处于打开状态
216                     {
217                         conn.Close();//关闭与数据库的链接
218                     }
219                 }
220             }
221             return ds;
222         }
223 
224         /// <summary>查询数据是否存在</summary>
225         public bool ExecuteDataIsExistByData(string sqlStr)
226         {
227             bool iss = false;
228             DataSet ds = ExecuteQueryDataSet(sqlStr);
229             for (int i = 0; i < ds.Tables.Count; i++)
230             {
231                 if (ds.Tables[i].Rows.Count > 0) iss = true;
232             }
233             return iss;
234         }
235 
236         /// <summary>查询数据是否存在 </summary>
237         public bool ExecuteDataIsExistByData(string sqlStr, SqlParameter[] paras)
238         {
239             bool iss = false;
240             DataSet ds = ExecuteQueryDataSet(sqlStr, paras);
241             for (int i = 0; i < ds.Tables.Count; i++)
242             {
243                 if (ds.Tables[i].Rows.Count > 0) iss = true;
244             }
245             return iss;
246         }
247 
248         /// <summary>查询增删改数据操作是否成功 </summary>
249         public bool ExecuteDataIsExistByInt(string sqlStr)
250         {
251             int ds = ExecuteNonQuery(sqlStr);
252             bool iss = ds > 0 ? true : false;
253             return iss;
254         }
255 
256         /// <summary>查询增删改数据操作是否成功 </summary>
257         public bool ExecuteDataIsExistByInt(string sqlStr, SqlParameter[] paras)
258         {
259             int ds = ExecuteNonQuery(sqlStr, paras);
260             bool iss = ds > 0 ? true : false;
261             return iss;
262         }
263     }
264 }

 

posted @ 2014-09-22 17:06  叶超Luka  阅读(1108)  评论(2编辑  收藏  举报