标签:
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Configuration; 6 using System.Data.SqlClient; 7 using System.Data; 8 9 /// <summary> 10 /// 名称: 11 /// 自定义SQL帮助器 12 /// 摘要: 13 /// 提供简化sql操作的一些基本方法 14 /// </summary> 15 public class SQLHelper 16 { 17 public SQLHelper() 18 { 19 // 20 // TODO: 在此处添加构造函数逻辑 21 // 22 } 23 24 /* 25 * 方法封装原则:把不变的操作放到方法里,把变化的操作放到参数中 26 */ 27 28 //摘要: 29 // 设置sql连接字符串 30 private static string connStr = ConfigurationManager.ConnectionStrings["dbConnectionString"].ConnectionString; 31 32 //摘要: 33 // 无参增、删、改 34 //输入: 35 // 无参sql语句(支持:insert、delete、update) 36 //输出: 37 // 受影响的行数 38 public static int doNonQuery(string sql) 39 { 40 using (SqlConnection sqlConn = new SqlConnection(connStr)) 41 { 42 sqlConn.Open(); 43 using (SqlCommand sqlCmd = sqlConn.CreateCommand()) 44 { 45 sqlCmd.CommandText = sql; 46 47 int rowsAffectedCount = sqlCmd.ExecuteNonQuery(); 48 sqlConn.Close(); 49 50 return rowsAffectedCount; 51 } 52 } 53 } 54 55 //摘要: 56 // 有参增、删、改,使用List<SqlParameter>参数 57 //输入: 58 // 1.有参数的sql语句(支持:insert、delete、update) 59 // 2.List形式的sql参数(参数个数可变) 60 //输出: 61 // 受影响的行数 62 public static int doNonQuery(string sql, List<SqlParameter> parameters) 63 { 64 using (SqlConnection sqlConn = new SqlConnection(connStr)) 65 { 66 sqlConn.Open(); 67 using (SqlCommand sqlCmd = sqlConn.CreateCommand()) 68 { 69 //准备sql(带@位置参数) 70 sqlCmd.CommandText = sql; 71 //foreach (SqlParameter param in parameters) 72 //{ 73 // sqlCmd.Parameters.Add(param); 74 //} 75 //装载sql参数 76 sqlCmd.Parameters.AddRange(parameters.ToArray()); 77 78 int rowsAffectedCount = sqlCmd.ExecuteNonQuery(); 79 sqlConn.Close(); 80 81 return rowsAffectedCount; 82 } 83 } 84 } 85 86 //摘要: 87 // 有参增、删、改,使用params SqlParameter[]可变参数 88 //输入: 89 // 1.有参数的sql语句(支持:insert、delete、update) 90 // 2.sql参数数组(参数个数可变) 91 //输出: 92 // 受影响的行数 93 public static int doNonQuery(string sql, params SqlParameter[] parameters) 94 { 95 using (SqlConnection sqlConn = new SqlConnection(connStr)) 96 { 97 sqlConn.Open(); 98 using (SqlCommand sqlCmd = sqlConn.CreateCommand()) 99 { 100 //准备sql(带@位置参数) 101 sqlCmd.CommandText = sql; 102 //foreach (SqlParameter param in parameters) 103 //{ 104 // sqlCmd.Parameters.Add(param); 105 //} 106 //装载sql可变参数 107 sqlCmd.Parameters.AddRange(parameters); 108 109 int rowsAffectedCount = sqlCmd.ExecuteNonQuery(); 110 sqlConn.Close(); 111 112 return rowsAffectedCount; 113 } 114 } 115 } 116 117 //摘要: 118 // 无参取单行单列对象 119 //输入: 120 // 无参数的sql语句(支持:insert、select) 121 //输出: 122 // 带输出参数的insert语句执行成功后或select语句执行成功后其所得结果集的第一行第一列 123 public static object doScalar(string sql) 124 { 125 using (SqlConnection sqlConn = new SqlConnection(connStr)) 126 { 127 sqlConn.Open(); 128 using (SqlCommand sqlCmd = sqlConn.CreateCommand()) 129 { 130 sqlCmd.CommandText = sql; 131 132 object scalarObj = sqlCmd.ExecuteScalar(); 133 sqlConn.Close(); 134 135 return scalarObj; 136 } 137 } 138 } 139 140 //摘要: 141 // 有参取单行单列对象,使用List<SqlParameter>参数 142 //输入: 143 // 1.带参数的sql语句(支持:insert、select) 144 // 2.List形式的sql参数(参数个数可变) 145 //输出: 146 // 带输出参数的insert语句执行成功后或select语句执行成功后其所得结果集的第一行第一列 147 public static object doScalar(string sql, List<SqlParameter> parameters) 148 { 149 using (SqlConnection sqlConn = new SqlConnection(connStr)) 150 { 151 sqlConn.Open(); 152 using (SqlCommand sqlCmd = sqlConn.CreateCommand()) 153 { 154 sqlCmd.CommandText = sql; 155 sqlCmd.Parameters.AddRange(parameters.ToArray()); 156 157 object scalarObj = sqlCmd.ExecuteScalar(); 158 sqlConn.Close(); 159 160 return scalarObj; 161 } 162 } 163 } 164 165 //摘要: 166 // 有参取单行单列对象,使用params SqlParameter[]可变参数 167 //输入: 168 // 1.有参数的sql语句(支持:insert、select) 169 // 2.sql参数数组(参数个数可变) 170 //输出: 171 // 带输出参数的insert语句执行成功后或select语句执行成功后其所得结果集的第一行第一列 172 public static object doScalar(string sql, params SqlParameter[] parameters) 173 { 174 using (SqlConnection sqlConn = new SqlConnection(connStr)) 175 { 176 sqlConn.Open(); 177 using (SqlCommand sqlCmd = sqlConn.CreateCommand()) 178 { 179 sqlCmd.CommandText = sql; 180 sqlCmd.Parameters.AddRange(parameters); 181 182 object scalarObj = sqlCmd.ExecuteScalar(); 183 sqlConn.Close(); 184 185 return scalarObj; 186 } 187 } 188 } 189 190 //摘要: 191 // 无参取DataTable对象 192 //输入: 193 // 无参数的sql语句(支持:select) 194 //输出: 195 // DataTable对象,其为select语句执行成功后其所得结果集 196 public static DataTable doDataTable(string sql) 197 { 198 using (SqlConnection sqlConn = new SqlConnection(connStr)) 199 { 200 sqlConn.Open(); 201 using (SqlCommand sqlCmd = sqlConn.CreateCommand()) 202 { 203 sqlCmd.CommandText = sql; 204 SqlDataAdapter adapter = new SqlDataAdapter(sqlCmd); 205 DataSet dataSet = new DataSet(); 206 adapter.Fill(dataSet); 207 208 DataTable dataTable = new DataTable(); 209 dataTable = dataSet.Tables[0]; 210 sqlConn.Close(); 211 212 return dataTable; 213 } 214 } 215 } 216 217 //摘要: 218 // 有参取DataTable对象,使用List<SqlParameter>参数 219 //输入: 220 // 1.有参数的sql语句(支持:select) 221 // 2.List形式的sql参数(参数个数可变) 222 //输出: 223 // DataTable对象,其为select语句执行成功后其所得结果集 224 public static DataTable doDataTable(string sql, List<SqlParameter> parameters) 225 { 226 using (SqlConnection sqlConn = new SqlConnection(connStr)) 227 { 228 sqlConn.Open(); 229 using (SqlCommand sqlCmd = sqlConn.CreateCommand()) 230 { 231 sqlCmd.CommandText = sql; 232 sqlCmd.Parameters.AddRange(parameters.ToArray()); 233 234 SqlDataAdapter adapter = new SqlDataAdapter(sqlCmd); 235 DataSet dataSet = new DataSet(); 236 adapter.Fill(dataSet); 237 238 DataTable dataTable = new DataTable(); 239 dataTable = dataSet.Tables[0]; 240 sqlConn.Close(); 241 242 return dataTable; 243 } 244 } 245 } 246 247 //摘要: 248 // 有参取DataTable对象,使用params SqlParameter[]可变参数 249 //输入: 250 // 1.有参数的sql语句(支持:select) 251 // 2.sql参数数组(参数个数可变) 252 //输出: 253 // DataTable对象,其为select语句执行成功后其所得结果集 254 public static DataTable doDataTable(string sql, params SqlParameter[] parameters) 255 { 256 using (SqlConnection sqlConn = new SqlConnection(connStr)) 257 { 258 sqlConn.Open(); 259 using (SqlCommand sqlCmd = sqlConn.CreateCommand()) 260 { 261 sqlCmd.CommandText = sql; 262 sqlCmd.Parameters.AddRange(parameters); 263 264 SqlDataAdapter adapter = new SqlDataAdapter(sqlCmd); 265 DataSet dataSet = new DataSet(); 266 adapter.Fill(dataSet); 267 268 DataTable dataTable = new DataTable(); 269 dataTable = dataSet.Tables[0]; 270 sqlConn.Close(); 271 272 return dataTable; 273 } 274 } 275 } 276 }
标签:
原文地址:http://www.cnblogs.com/ArisLoong/p/4923797.html