ASP.NET数据库连接字符串总结

一、使用OleDbConnection对象连接OLE DB数据源 


1.连接Access 数据库 




Access 2000: “provider=Microsoft.Jet.Oledb.3.5;Data Source=Access文件路径” 


Access 2003: “provider=Microsoft.Jet.Oledb.4.0;Data Source=Access文件路径” 


Access 2007: “provider=Microsoft.Ace.Oledb.12.0;Data Source=Access文件路径” 


备注:Access数据库只提供两个连接属性provider(数据提供程序)和data source(数据源); 


Access2000\2003的文件格式是“.mdb”,,Access2007的文件格式是“.accdb”; 


Access的数据提供程序版本是向下兼容的,在Win7下测试使用Microsoft.Jet.OLEDB.3.5提示“未在本地计算机上注册“Microsoft.Jet.OLEDB.3.5”提供程序。”,改用Microsoft.Jet.OLEDB.4.0或者Microsoft.Ace.OLEDB12.0完全可以访问Access2000的数据库文件。当然也可以尝试使用微软提供的MDAC 来修改provider的版本。 


2.连接Excel数据库 




Excel 2003: “provider=Microsoft.Jet.OLEDB.4.0;Data Source=Access文件路径;extended properties=excel 8.0” 


Excel 2007: “provider=Microsoft.Ace.OLEDB.12.0;Data Source=Access文件路径;extended properties=excel 12.0” 


备注:在代码中引用工作表时,应将表名表示为“[工作表名$]”,遇到字段为数据库保留关键字时,给该字段名加上[]以示区别,如定义select 语句时:string connStr=”select * from [login$] where username=’abc’ and [password]=’abc123’ ”; 
如果在数据表中用数字作为文本类型数据时,则应在数字前加单引号将默认的数值强行设定为文本类型。 


3.连接SQL Server数据库 


provider=SQLOLEDB;  Data Source=服务器名;  Initial Catalog=数据库名;  uid=用户;  pwd=密码 二、使用SqlConnection对象连接SQL Server数据库 


声明:以下连接的属性都可以参考“SQL Server 数据库连接字符串参数一览表”取它的别名;除了必须设置的属性以外还可以设置其他辅助的属性。如Connect Timeout、Encrypt等 


设置数据库文件路径的方法: 


1.使用绝对路径:“AttachDbFilename=D:\\Solution1\\Web\\App_Data\\data.mdf” 


2.使用服务器相对路径:“AttachDbFilename=”+Server.MapPath(“\\App_Data\\data.mdf”) 


3.使用最简单的相对路径:“AttachDbFilename=|DataDirectory|\\data.mdf” 


推荐使用第3种方式,“|DataDirectory|”代表ASP.NET项目里自动创建的App_Data文件夹 


1.以SQL Server验证模式连接SQLServer 


(1)以数据库名连接方式 


Server=服务器名;  Database=数据库名称;  User ID=用户名;  Password=密码 或者(使用缩写与别名) 


Server=服务器名;   Initial Catalog=数据库名称;  Uid=用户;  Pwd=密码 (2)以数据库文件完整路径连接方式 


“Serve=服务器名;AttachDbFilename=数据库文件路径;User ID=用户名;Password=密码” 


示例: 


Server=.\SQLEXPRESS; Database=DatabaseName; User ID =sa; Password=abc123”  Server=.\SQLEXPRESS; Initial Catalog =DatabaseName; Uid =sa; Pwd=abc123”  Server=(local)\SQLEXPRESS; AttachDbFilename=D:\\Solution1\\Web\\App_Data\\data.mdf;User ID =sa; Password=abc123” 备注:密码可以为空。 


2.以Windows 验证模式连接SQL Server 


(1)以数据库名连接方式 


Server=服务器名;  Database=数据库名称;  Integrated Security=SSPI (2)以数据库文件完整路径连接方式 


“Serve=服务器名;AttachDbFilename=数据库文件路径; Integrated Security=true” 


示例: 


Server=服务器名;  Database=数据库名称;  Integrated Security=SSPI  Server=(local)\SQLEXPRESS;   AttachDbFilename=D:\\Solution1\\Web\\App_Data\\data.mdf;  Integrated Security=true” 备注:SSPI即为true 


三、使用OdbcConnection对象连接ODBC数据源 


“Driver=数据库提供程序名;Server=服务器名; Database=数据库名;Trusted_Connection=yes” 
示例: 


首先要在计算机管理à数据源à配置好相对应的数据源(选择数据库类型,设置数据库文件路径与相对应的数据库名) 


Driver= Microsoft.Jet.OLEDB.4.0;  Server=.\SQLEXPRESS;   Database=DatabaseName;  Trusted_Connection=yes 四、使用OracleConnection对象连接Oracle数据库 


Data Source=Oracle8i;  Integrated Security=yes 五、在ASP.NET项目中的web.config文件里配置数据库连接并在程序代码中获取连接字符串 


1.在<connectionStrings> 标签里添加连接 


<connectionStrings>   <add name="ConnectionName" connectionString="Server=.\SQLEXPRESS;Database=DatabaseName;User ID=sa;Password=abc123"   providerName="System.Data.SqlClient" />   </connectionStrings> 或者 


<connectionStrings>   <add name="ConnectionName" connectionString="Server=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\data.mdf;Integrated Security=true" providerName="System.Data.SqlClient" />   </connectionStrings> 在程序代码中获取<connectionStrings> 标签里的连接字符串: 


引用命名空间: 


Using System.Configuration ;  string connStr = ConfigurationManager.ConnectionStrings["ConnectionName"].ToString(); 2.在<appSettings>标签里添加连接 


<appSettings>  <add key="ConnectionName" value="Server=.\SQLEXPRESS;Database=DatabaseName;User ID=sa;Password=abc123" />  </appSettings> 或者 


<appSettings>  <add key="ConnectionName"   value="Server=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\data.mdf;Integrated Security=True" />  </appSettings> 在程序代码中获取<appSettings> 标签里的连接字符串: 


引用命名空间: 


Using System.Configuration ;  string connStr = ConfigurationManager.AppSettings["ConnectionName"].ToString();  

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。