转自:http://blog.csdn.net/mayanly/article/details/6049999
利用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>
<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
{
{
try
{
//新建一个DataSet
DataSet myData=new DataSet();
DataSet myData=new DataSet();
//定义查询语句
string cmd="SELECT top 1 * FROM student";
string cmd="SELECT top 1 * FROM student";
//调用SqlHelper.ExecuteDataset方法
myData=SqlHelper.ExecuteDataset(SqlHelper.CONN_STRING_LC,CommandType.Text,cmd);
myData=SqlHelper.ExecuteDataset(SqlHelper.CONN_STRING_LC,CommandType.Text,cmd);
//绑定数据库和DataGrid控件
DataGrid1.DataSource=myData.Tables[0];
DataGrid1.DataBind();
DataGrid1.DataSource=myData.Tables[0];
DataGrid1.DataBind();
//显示成功连接信息
Label1.Text="数据库连接成功";
}
}
//显示一个数据库连接的错误信息
catch(Exception excp){
Label1.Text=excp.Message.ToString();
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的命名空间。