web.config中配置数据库连接的两种方式

在网站开发中,数据库操作是经常要用到的操作,ASP.NET中一般做法是在web.config中配置数据库连接代码,然后在程序中调用数据库连接代码,这样做的好处就是当数据库连接代码需要改变的时候,我们只要修改web.config中的数据库连接代码即可,而不必在修改每一个页面中的数据库连接代码。

在ASP.Net中有两种配置数据库连接代码的方式,它们分别是 appSettings 和 connectionStrings 。在使用 appSettings 和 connectionStrings 配置数据库连接代码时,可分别在 下添加如下代码:

1. appSettings

<appSettings>
    <add key="conn" value="server=服务器名;database=数据库名;uid=用户名;password=密码;"/> </appSettings>
  • 1
  • 2
  • 3

2. connectionStrings

<connectionStrings>
    <add name="conn" connectionString="server=服务器名;database=数据库名;uid=用户名;password=密码" providerName="System.Data.SqlClient" /> </connectionStrings>
  • 1
  • 2
  • 3

appSettings 和 connectionStrings 的区别:(摘自http://www.cnblogs.com/kerry1986/archive/2009/07/08/1518895.html

(1) appSettings 是在 2003 中常用的,connectionStrings 是在 2005 中常用的;

(2) 使用 connectionStrings 的好处:

  • 第一,可将连接字符串加密,使用MS的一个加密工具即可;

  • 第二,可直接绑定数据源控件,而不必写代码读出来再赋值给控件;

  • 第三,可方便的更换数据库平台,如换为 Oracle 数据库,只需要修改 providerName。

(3) 写在 appSettings 中用 System.Configuration.ConfigurationManager.AppSettings[“keyname”] 获取数据库连接代码值;写在 connectionStrings 中用 System.Configuration.ConfigurationManager.ConnectionStrings[“name”] 获取数据库连接代码值。

转载:http://www.cnblogs.com/sunzhiyue/archive/2011/06/07/2074696.html

实例

一个很简单的webconfig.xml内配置数据库连接,这也是在网上转载的。自己在做了些笔记。欢迎小学生来关顾,大神就直接忽略吧。 
  webconfig.xml的配置内容如下:

  <configuration>
  <connectionStrings>
  <add name="ApplicationServices"   connectionString="data source=.SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true"   providerName="System.Data.SqlClient" />   <add name="TESR_DB" connectionString="user id=sa;Data Source=127.1.1.1;password=12345678;Persist Security Info=True;" providerName="System.Data.SqlClient" />   </connectionStrings>   ……
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

  Persist Security Info=True;的意识是:是否保密信息,DO在数据库连接成功后是否保存密码信息。True表示保存,False表示不保存。 
  主要是name=”TESR_DB”,会被后台对应的ConfigurationManager.ConnectionStrings取到 
  以上的是SQL SEVER的,Oracle的是

<add name="TESR_DB" connectionString="DATA SOURCE=127.1.1.1;PASSWORD=12345678;USER ID=sa" providerName="Oracle.DataAccess.Client" />
  • 1

  测试是否连接代码: 
  (在后台要引用webconfig.xml的配置信息,需要引入 using System.Configuration;库,才可调用到webconfig.xml的配置信息)

  string myvar1 = ConfigurationManager.ConnectionStrings["TESR_DB"].ToString();
  SqlConnection conn = new SqlConnection(myvar1);
  try
  {
  conn.Open();
  Response.Write("连接成功");   }   catch (Exception ex)   {   Response.Write("连接失败");   }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

  这里和显然的告诉大家,或许都已经注意到了name=”TESR_DB”在后台是被 ConfigurationManager.ConnectionStrings[“TESR_DB”].ToString();是一致的。一个项目对应多个数据库什么的或者其他信息,就是利用不同的name来设置。 
转载:http://www.3lian.com/edu/2014/05-13/147244.html

C#连接SQL Server数据库代码解析

连接字符串:

<connectionStrings>

  <add name="conn" connectionString="user id=sa;Password=;initial catalog=Northwind;Server=YourSQLServer;Connect Timeout=30;" providerName="System.Data.SqlClient" /> </connectionStrings>
  • 1
  • 2
  • 3
  • 4
  • 5

参数介绍(注意:参数间用分号分隔):

“user id=sa”:连接数据库的验证用户名为sa.他还有一个别名”uid”,所以这句我们还可以写成”uid=sa”.

“password=”:连接数据库的验证密码为空.他的别名为”pwd”,所以我们可以写为”pwd=”.

这里注意,你的SQL Server必须已经设置了需要用户名和密码来登录,否则不能用这样的方式来登录.如果你的SQL Server设置为Windows登录,那么在这里就不需要使用”user id”和”password”这样的方式来登录,而需要使用”Trusted_Connection=SSPI”来进行登录.

“initial catalog=Northwind”:使用的数据源为”Northwind”这个数据库.他的别名为”Database”,本句可以写成”Database=Northwind”.

“Server=YourSQLServer”:使用名为”YourSQLServer”的服务器.他的别名为”Data Source”,”Address”,”Addr”.如果使用的是本地数据库且定义了实例名,则可以写为”Server=(local)\实例名”;如果是远程服务器,则将”(local)”替换为远程服务器的名称或IP地址.

“Connect Timeout=30”:连接超时时间为30秒.

注:以上User ID,Password可以大写也可以小写,与大小写无关

猜你喜欢

转载自www.cnblogs.com/yachao1120/p/10535692.html