利用SqlHelper.cs实现Web程序与数据库的连接



        SqlHelper.cs文件封装了所有的关于数据库的操作。鹏鹏推荐给我使用,我实验一下果然可行。防止以后忘记,特写此文章。



        我的这个SqlHelper.cs是鹏鹏给我的版本,可能与其它人的不太一样,但是变动不大。要连接数据库,一共涉及到四个文件,SqlHelper.cs,Web.config以及要连接到数据库的Web应用程序sqltest.cs和sqltest.aspx(这两个文件名自己取,它们是相关联的,后缀名不同,名字相同)。当然还有个在(local)服务器上的数据库test(这个也是自己建的)。



        首先,用 visual studio.net 2003 新建一个WebApplication,命名为sqltest。这时候就在项目中自动生成了sqltest.cs、sqltest.aspx以及Web.config。然后要将SqlHelper.cs文件添加到项目中,具体方法是通过菜单<项目>中的<添加现有项>将其添加。其中SqlHelper.cs文件可以在网上下载,用百度或google搜一下就好。



        这样准备工作就做好了,下面进行配置过程。



        1.连接数据库要用到SqlHelper.cs中的连接字符串。首先在SqlHelper.cs的SqlHelper类中声明一个连接字符串:



 


public static string CONN_STRING_LC = 
 
 
 

                    ConfigurationSettings.AppSettings["CONN_STRING_LC"];



 



        其中CONN_STRING_LC可以替换成任何你自己理解的名字,注意这句子中的两个CONN_STRING_LC一定要保持一致。



 



        2.打开Web.config文件,在其中添加一个项。用来记录连接字符串的实际值。



 



 

<appSettings> 
  
        <add key="CONN_STRING_LC" value="server=.; database=test;uid=sa; pwd="/> 
  
        </appSettings>

 



        这里和上面的句子是对应的,也有个CONN_STRING_LC,要保持一致。value后面是对数据库的配置文件,server=.表示是(local)服务器,当然你也可以把点换成服务器的名称;database=test表示数据库源是test;后面的uid=sa是数据库test的一个用户名,sa是SQL Server 2000的默认用户,当然你也可以新建不同用户。pwd=后面的是对应用户的密码。



 



        3.在sqltest.aspx中添加一个DateGrad控件,默认名为DataGrid1。将来用它来显示数据库的数据。再添加一个Label控件,默认名Label1。将来用来显示连接成功还是失败的信息。



 



        4.在sqltest.cs中的Page_Load中添加一下程序



 


private void Page_Load(object sender, System.EventArgs e) 
  
  { 
  
   try 
  
   { 
  
 

       //新建一个DataSet 
  
    DataSet myData=new DataSet(); 
  
 

       //定义查询语句 
  
    string cmd="SELECT  top 1 * FROM student"; 
  
 

       //调用SqlHelper.ExecuteDataset方法 
  
    myData=SqlHelper.ExecuteDataset(SqlHelper.CONN_STRING_LC,CommandType.Text,cmd); 
  
 

       //绑定数据库和DataGrid控件 
  
    DataGrid1.DataSource=myData.Tables[0]; 
  
    DataGrid1.DataBind(); 
  
 

       //显示成功连接信息 
 
 
 

       Label1.Text="数据库连接成功"; 
  
   } 
  
 

       //显示一个数据库连接的错误信息 
 
 
 

   catch(Exception excp){ 
  
    Label1.Text=excp.Message.ToString(); 
  
 

      } 
  
  }


 



        这里重点介绍SqlHelper.ExecuteDataset方法。此方法返回一个DataSet对象,它有9个重载的不同签名(就是参数不同)的同名方法。本例中用的是其中一个,有三个参数,第一个就是配置文件的连接字符串,对应前面的用SqlHelper.CONN_STRING_LC;第二个是查询命令的类型,就用这个CommandType.Text就可以了;最后是自己建立的查询语句字符串,它直接影响到DataGrid1显示的内容,本例查询test数据库中的student表第一行的所有字段,使用的是标准SQL语言。



       



        5.注意SqlHelper.cs的命名空间如果和testsql.cs的命名空间相同,就应该能连接成功。如果不同则要在testsql.cs中添加:



      

using DA;

       



        其中DA代表Sqlhelper.cs的命名空间。