userid = test
password = aps'";
那么连接字符串的写法为:
Provider=SQLOLEDB.1;Password="aps'"";";Persist Security Info=True;User ID=spooltest;Initial Catalog=MyBeer20G;Data Source=HI4-SV09
如果连接字符串写在web.config(xml文件)中,只要把双引号作html转义(替换成"e;),程序不需要做任何改动,连接字符串改为:
Provider=SQLOLEDB.1;Password="e;aps'"e;"e;;"e;;Persist Security Info=True;User ID=spooltest;Initial Catalog=MyBeer20G;Data Source=HI4-SV09
如果连接字符串的密码中存在双引号,使用framework1.1时切记打上framework1.1的pacth,否则System.Data.SqlClient.SqlConnent类的连接字符串不支持双引号。
如果登录或密码包含以下字符:[]{}(),;?*!
@。则使用SQL Query
Analyer不能连接数据库
Web.config中连接字符串的解决方案如下 1.直接在Web.config中写明文连接字符串 这种方式优点: a.无需使用第三方工具 b.数据库连接一目了然,容易维护 缺点: a.用户必须了解字符串生成的一个特殊规则,即:如果关键字所对应的值含有双引号, 则必须成对出现。 b.另外用户必须知道5个XML转义字符(如果连接字符串中含有特殊字符)
例子: <add 数据库连接: server=ServerName;database=DBName;uid=test;pwd="a-=\;',./:""<>?@&b"; 数据库密码:a-=\;',./:"<>?@&b (只有一个双引号) (插曲:鉴于大多用户可能会忘记这些规则, 2.在Web.config维护加密过的连接字符串。 这种方式优点: a.数据连接字符串保密性好,安全性高 b.无需了解过多的XML,数据库连接字符串知识 缺点 a.不容易维护 b.必须使用第三方工具,加密解密 |