在.net平台的项目开发中,凡是用到数据库交互的,都有必要了解SqlHelper类的原理.
步骤一:
我就拿WPF项目开发作为例子.首先要新建一个App.config(应用程序配置文件).注意,在VS中默认新建的文件名为App1.config.必须要把名字改回来.你不管在App1.config里写什么,项目都不会加载.文件名必须是App.config.当然,如果你做的是web开发,可以新建一个web.config配置文件,原理相同.
新建这个配置文件用来写入与数据库连接的必要信息.如服务器地址,数据库名称,用户名,密码.
1 <configuration>
2 <connectionStrings>
3 <add name="connStr" connectionString="Data Source=127.0.0.1;Initial Catalog=db_mytest;User Id=user;Password=111"/>
4 </connectionStrings>
5 </configuration>
步骤二:
配置文件写好了.现在我们就来写SqlHelper这个类了.
在写类的时候,一定要思路清晰,知道具体的步骤,按部就班的来.
首先要做的必然是建立和数据库的连接.然后才是定义增删改查的方法,代码如下.
1 class SqlHelper 2 { 3 private string connStr = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString; 4 public int ExecuteNonQuery(string sql) 5 { 6 using(SqlConnection conn = new SqlConnection(connStr)) 7 { 8 conn.Open(); 9 using(SqlCommand cmd = conn.CreateCommand()) 10 { 11 cmd.CommandText=sql; 12 return cmd.ExecuteNonQuery(); 13 } 14 } 15 } 16 }
当然了,我只是写了一个增删改的方法,这个方法返回的是一个int型数据,表示表中受影响的行数.下面是查的方法,因为这个方法返回的是对象类型,所以函数的返回类型为object.
public object ExecuteScalar(string sql) { //同样是先建立连接 using(SqlConnection conn = new SqlConnection(connStr)) { conn.Open(); //打开连接 using(SqlCommand cmd = conn.CreateCommand()) { cmd.CommandText=sql; SqlDataAdapter adapter = new SqlDataAdapter(cmd); DataSet dataset = new DataSet(); adapter.Fill(dataset); return dataset; } } }
当然了,以上只是一个简单的原理.落实到具体项目中还有很多需要弥补的地方.比如防止SQL注入,比如更方便的tabledata 函数返回.我会在后面的文章中仔细讲解.