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();
备注:.NET2.0以后连接数据库的字符串可以放在这两个不同的地方,但是,如果是用绑定的数据控件(eg:SQLDataSource),那么连接串,只能在放<connectionStrings> 标签里
原文地址:ASP.NET 连接字符串的多种写法
asp.net 连接字符串的多种写法的更多相关文章
- 【转】asp.net连接数据库字符串有哪些写法[数据连接]
来源:http://blog.unvs.cn/archives/database-link-method.html 下面是个人总结的net网站连接数据库的字符串几种写法: 一.结合webconfig位 ...
- ASP入门(二十一)- 如何自己获取 ADO 连接字符串
1.新建一个文本文件,并将文件名修改为[ado.udl] 注意 如果不显示扩展名,请在资源管理器的[查看 | 选项]对话框中去掉"隐藏已知文件类型的扩展名"勾就可以了. 2.双击这 ...
- SQL Server 2008连接字符串写法大全
一..NET Framework Data Provider for SQL Server 类型:.NET Framework类库使用:System.Data.SqlClient.SqlConnect ...
- SQL Server 2008连接字符串写法大全{转}
一..NET Framework Data Provider for SQL Server 类型:.NET Framework类库使用:System.Data.SqlClient.SqlConnect ...
- SQL Server 2008连接字符串写法大全(摘自网络)
一..NET Framework Data Provider for SQL Server 类型:.NET Framework类库使用:System.Data.SqlClient.SqlConnect ...
- ASP.NET web.config中的连接字符串
在ASP.NET的web.config中,可以用两种方式来写连接字符串的配置. <configuration> <appSettings> <add key=" ...
- ASP.NET MVC 5 - 创建连接字符串(Connection String)并使用SQL Server LocalDB
您创建的MovieDBContext类负责处理连接到数据库,并将Movie对象映射到数据库记录的任务中.你可能会问一个问题,如何指定它将连接到数据库? 实际上,确实没有指定要使用的数据库,Entity ...
- (译)利用ASP.NET加密和解密Web.config中连接字符串
介绍 这篇文章我将介绍如何利用ASP.NET来加密和解密Web.config中连接字符串 背景描述 在以前的博客中,我写了许多关于介绍 Asp.net, Gridview, SQL Server, A ...
- ASP.NET 5探险(1):Azure中配置连接字符串、独立项目执行EF7数据迁移
(此文章同时发表在本人微信公众号“dotNET每日精华文章”,欢迎右边二维码来关注.) 题记:我开始把ASP.NET 5用于生产系统开发已经有1个多月了,也填了一些坑积累了一些经验,从今天开始会陆陆续 ...
随机推荐
- 【翻译】前景img-sprites, 高对比模式分析
->译文,原文在这里<- 本文地址: http://www.cnblogs.com/blackmanba/p/img-sprites-high-contrast.html或者http:// ...
- FloatActionButton弹出菜单
浮动按钮的弹出菜单动画 将几个按钮重叠摆放,使用ValueAnimator更新按钮的坐标实现. 布局 <FrameLayout android:layout_width="match_ ...
- Caffe CommonLayer分析
Caffe CommonLayer分析 \(Caffe\)中包含了很多通用的功能层,包含了\(concat\),\(slice\),\(split\),\(crop\),\(flip\),\(scal ...
- Hihocoder1350-Binary Watch
时间限制:10000ms单点时限:1000ms内存限制:256MB 描述 Consider a binary watch with 5 binary digits to display hours ( ...
- luogu p1003
P1003 题意 经过多个矩形(1e3)覆盖后后某个坐标属于那个矩形(仅仅是一次询问) 大水题,直接的做法,从后向前处理矩形是否覆盖查询的点,若覆盖,则是该矩形编号 题解 int get_num(){ ...
- 为什么使用GitHub
GitHub的特点: 1.开源式分布版本管理系统 2.开源项目集中的代码库 3.所有略有规模的公司都在使用 GitHub的功能介绍: 1.记录多个版本 2.查看历史操作,可以进行版本吧回退和前进的控制 ...
- C语言基本语法——变量
1.变量作用域 2.局部变量 3.全局变量 4.变量生命周期 5.auto关键字 6.static关键字 1.变量作用域 • 变量作用域是指变量的有效范围 • 变量作用域是定义变量从何处被创建,到何处 ...
- IOS - Autorelease for CGMutablePathRef?
http://stackoverflow.com/questions/2819548/autorelease-for-cgmutablepathref Autorelease pools exist ...
- CF833B The Bakery (线段树+DP)
题目大意:给你一个序列(n<=35000),最多分不大于m块(m<=50),求每个块内不同元素的数量之和的最大值 考试的时候第一眼建图,没建出来,第二眼贪心 ,被自己hack掉了,又随手写 ...
- Python-基础-day6
1.二进制 前言:计算机一共就能做两件事:计算和通信 2.字符编码 生活中的数字要想让计算机理解就必须转换成二进制.十进制到二进制的转换只能解决计算机理解数字的问题,那么文字要怎么让计算机理解呢? 于 ...