程序访问数据库需要进行的操作有创建与某个指定数据库的连接,
然后打开创建好的连接,创建执行指令(也就是sql执行代码),
最后执行指令,关闭创建的连接,释放资源。
ado.net是一组用于和数据源进行交互的面向对象的类库,通过所提供的类
我们可以很好的对数据库进行操作。
为了方便数据库的访问,我们可以写一个数库库访问辅助类,这个辅助类将
我们经常对数据库进行的增删改查等操作封装起来。
SqlHelper辅助类:
1 //数据库访问辅助类 2 public static class SqlHelper 3 { 4 //数据库连接字符串 5 private static string ConnStr = ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString; 6 7 //增、删、改 8 public static int ExecuteNonQuery(string sql, params SqlParameter[] parameters) 9 { 10 using (SqlConnection conn = new SqlConnection(ConnStr)) 11 { 12 conn.Open(); 13 using (SqlCommand cmd = conn.CreateCommand()) 14 { 15 cmd.CommandText = sql; 16 cmd.Parameters.AddRange(parameters); 17 return cmd.ExecuteNonQuery(); 18 } 19 } 20 } 21 22 //查询 23 public static DataTable ExecuteDataTable(string sql, params SqlParameter[] parameters) 24 { 25 using (SqlConnection conn = new SqlConnection(ConnStr)) 26 { 27 conn.Open(); 28 using (SqlCommand cmd = conn.CreateCommand()) 29 { 30 cmd.CommandText = sql; 31 cmd.Parameters.AddRange(parameters); 32 33 DataSet dataSet = new DataSet(); //数据集 34 SqlDataAdapter adapter = new SqlDataAdapter(cmd); 35 adapter.Fill(dataSet); 36 return dataSet.Tables[0]; 37 } 38 39 } 40 } 41 42 //返回首行首列的内容 43 public static object ExecuteScalar(string sql, params SqlParameter[] parameters) 44 { 45 using (SqlConnection conn = new SqlConnection(ConnStr)) 46 { 47 conn.Open(); 48 using(SqlCommand cmd=conn.CreateCommand()) 49 { 50 cmd.CommandText = sql; 51 cmd.Parameters.AddRange(parameters); 52 return cmd.ExecuteScalar(); 53 } 54 } 55 }
附:连接数据库配置文件
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add name="dbConnStr" connectionString="Data Source=.; Initial Catalog=mydb;User ID=sa;Password=123456"/>
</connectionStrings>
</configuration>
//文件名称好像规定是要App.config,接下来在程序中使用该连接字符串
1:引用
解决方案--引用--右键添加--.NET--System.Configuration
之后就能使用System.Configuration里的ConfigurationManager类了
2:使用
string conStr = ConfigurationManager.ConnectionStrings["dbConnStr"].ConnectionString;
//ConfigurationManager需要解析获取命名空间。因为可能有多个连接串所以要用ConnectionStrings,因为它有多个属性,所有要用ConnectionString
conStr的值就是 "Data Source=.; Initial Catalog=mydb;User ID=sa;Password=123456"