昨天在论坛里看到一个问题是:每当数据库迁移或更改ip时,网站就要更改很多次数据库连接地址,问有没有更简单点的方法可以省略这么多繁琐的步骤。
在这我要针对此问题进行讲解,连接数据库一般有三种方式
1. server = 服务器名;database = 数据库名;UID = 用户名;pwd = 密码
2. Data Source = 服务器名;Initial Catalog = 数据库名;User ID = 用户名;pwd = 密码
现在要介绍的正是第三种方式
大家都知道,只要建立一个网站(动态网站),总是会自动生成一个web。Config文件,这个文件是一个xml文件,它用来存储web应用程序的配置信息,例如创建一个节存储数据库连接字符串,这样当ASP.NET页面需要与数据库进行交互时,就不需要每次进行数据库连接,并且当数据库迁移到另一个不同的服务器上或整个网站进行迁移时,只修改web。Config文件中的数据库连接配置信息即可,并不需要对每个页面 进行数据库配置信息的修改。
3. 连接步骤:
(1) 打开自动生成的文件web。Config文件,找到配置节<configuration>下的子配置节<connectionstrings/>,使用name属性和<connectionstring/>属性配置数据库连接信息,将<connectionstring/>用下面的代码替换。
<connectionStrings>
<add name="heyjudeConnectionString(自定义的名字,为了以后连接。)" connectionString="Data Source=172.16.100.1(服务器地址);Initial Catalog=heyjude(要连接的数据库名称); User ID=sa;Password=123.com />
</connectionStrings>
(2) 在需要连接数据库的页面中连接
在连接前需要用using引用命名空间using System.Data.SqlClient;
在visual studio 2005中需要引用命名空间using System.Configuration;
protected void Page_Load(object sender, EventArgs e)
{
string connection = ConfigurationManager.ConnectionStrings["heyjudeConnectionString"].ConnectionString;
SqlConnection sqlstr = new SqlConnection(connection);
sqlstr.Open();
Response.Write("数据库连接成功!");
sqlstr.Close();
}
结果:
4. 这样就可以了,虽然在每个页面中还是要进行连接数据库,但是当数据库的地址发生改变时,我们只需要在web。Config中改变服务器的地址即可。如果嫌给web。Config中添加代码比较麻烦,我们可以直接在默认页面中添加一个sqldatasource控件即可,按照步骤进行配置即可在web。Config中自动出现相应的代码。在其他页面只需连接即可。