note-数据库字符串

在dot Net 大行其道的今天。。。。。。

要记住那得先找到格式;

1 连接字符器的生成规则:(参考:http://connectionstrings.com/Articles/Show/important-rules-for-connection-strings

  1. 所有的空白符[1]都会被忽略,除非它出现在值[4]部分,或者在双引号("[2])中间。
  2. 尽管空白字符会在机器层面上影响到连接池,因为池化的连接必须具有完全相同的连接字符串。
  3. 如果值[4]中包含有分号,用双引号定界。
  4. 如果值[4]中包含引号(双引号,或单引号),用未出现的另一种引号定界。
  5. 不支持转义序列。
  6. [4]的类型不是十分重要。
  7. 名称是不 分 大 小 写的。
  8. 如果键=值[4]对出现了多次以最后一次出现的为准,PROVIDER除外,它是以第一次出现为准。
  9. 如果键[4]中包含等号[5],在它前面必须多加一个等号[5]来表示它是键[4]的一部分.

2 OLEDB PROVIDER 格式:

首先我要声明的是这个格式应该是本来就存在的,但由于我的知识的信息水平有限,我没有办法找到,拿到严格意义上的标准文档,所以只有通过从实际中对比查找的方法总结出这个所谓的格式,如果您知道会手中有相关文档请一定通知我一声,不甚感激。好了开始了。。

OLE DB Provider for Oracle (Microsoft)Provider=MSDAORA; Data Source=myOracleDB;User Id=myUserName;Password=myPassword;
OLE DB Provider for Oracle (Oracle)Provider=OraOLEDB.Oracle;Data Source=myOracleDB;User Id=myUserName;Password=myPassword;
OLE DB Provider for Sql Server Provider=sqloledb;Data Source=myServerName;Initial Catalog=myDataBase;User Id=myLoginPassword=myPassword;
OLE DB Provider for MySqlProvider=MySQLProv;Data Source=mydb;User Id=myUserName;Password=myPass;
OLE DB Provider Name ProviderData SourceUser IdPassword

如你所见,我处心积虑地把这些个串放到一个表格里面,不小得你看到后有没有感觉哈。再看表脚。恩恩。就是这样了。

3 ODBC Driver 格式:

故技重施,再来一个表格。
Microsoft Access ODBC DriverDriver={Microsoft Access Driver (*.mdb)};Dbq=C:\mydatabase.mdb;Uid=Admin;Pwd=myPass;
Oracle in OraHome92Driver={Oracle in OraHome92};Dbq=myTNSServiceName;Uid=myUsername;Pwd=myPassword;
Microsoft ODBC for OracleDriver={Microsoft ODBC for Oracle};Server=myServerAddress;Uid=myUsername;Pwd=myPassword;
ODBC Driver for SQL 2000 Driver={SQL Server};Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;
ODBC Driver for SQL 2005Driver={SQL Native Client};Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;
     
ODBC Driver NameDriverDataBase LocationUidPwd

哈,就是这个,这个ODBC DRIVER  看起来比OLE DB 来得 更文达其意了些。
到现在差不多就可以把OLE DB ODBC 的几个常见的连接字符串记下来了吧?

4 ADO.net 格式:

作为最为广大“开发人员”(用户)着想的微软,为了解决我们做前面3步的困难,毅然地提出了,十分好用的的ADO.net, 来看看,ADO.net 的连接字符串, 不来表格了。

MySql.Data.MySqlClient.MySqlConnection(MySql)
Server=myServerAddress;Port=1234;Database=myDataBase;Uid=myUsername;Pwd=myPassword;

System.Data.SqlClient.SqlConnection(Microsoft)
Server=myServerAddress;Database=myDataBase;User ID=myUsername;Password=myPassword;
或者
Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;

System.Data.OracleClient.OracleConnection
Data Source=MyOracleDB;User Id=myUsername;Password=myPassword;Integrated Security=no;
可以看出这里面已经没有了,关于Provider 或者 Driver 的细节了,只有和连接相关的信息,server 啊, Database 啊。。

后记,通过自我总结,的确记住了些连接字符串,但有些小小的遗憾,微软的OPEN 体系在.net 平台上仍然没有很好的统一起来。

 

注释:

[1]如 0AH, 0DH, 20H, 09H这些都算,详见 .

[2]ASCII, 34H.

[3]ASCII, 3BH.

[4]连接字符串是由多个键=值对(key=value pair)组成的。如Provider=sqloledb;Data Source=(local)

[5]ASCII, 3DH.

转载于:https://www.cnblogs.com/qinghao/archive/2009/09/24/1573204.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值