我正在尝试使用ADO连接到SQL Server数据库。密码包含一个空格作为最后一个字符。构建连接字符串时,如何转义密码?
MSDN表示将其用单引号或双引号括起来,但这似乎不起作用......
http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.connectionstring.aspx
这就是我的连接字符串:
Provider=SQLOLEDB;Persist Security Info=False;Initial Catalog=master;Data Source=test;uid=john;pwd="123 "
谢谢
答案 0 :(得分:13)
我可以告诉你做什么工作:
Provider=SQLOLEDB;Password="123 ";Persist Security Info=True;User ID=john;Initial Catalog=mydbname;Data Source=127.0.0.1
pwd
关键字而不是Password
时,它无法连接 - 您需要使用Password
关键字,该关键字应使用双引号括起来。uid
而不是User ID
工作正常 - 我仍然使用User ID
,因为连接构建器默认创建它。 Persist Security Info
关键字(在其中一条评论中提及)对连接没有影响 - 因为@TLama评论很好“你可以连接,但是你没有从{{返回密码1}} interface,如果你把它保持为假。“ IDBProperties
接口将此字符串解析为internal "Properties" collection 使用SQL Server 2008 R2进行测试。