0

在 web.config 中:

<add name="conn" providerName="System.Data.SqlClient" connectionString="Server=SERVERNAME; Initial Catalog=INITIALDB; UID=username; PWD=+abc-def(;" />

我通过删除数据库用户并重新创建它来确保用户名在 INITIALDB 中具有 db_owner 角色。我通过 SSMS(使用上述 UID 和 PWD)连接到服务器并扩展数据库,确保用户名密码有效。

有任何想法吗?我束手无策,我无法轻易更改分配给我的密码......我认为这些字符中的任何一个都不需要转义,但显然存在问题。

更新:

该错误与密码字符无关。我收到“无法打开数据库......登录请求。登录失败......”但是 - 当我从连接字符串中删除“初始目录”或“数据库”部分时,连接工作正常。原来,数据库有一个与数据库名称不同的 .MDF 文件名(例如 my_db_name 和 db_name.mdf)。不知何故,指定数据库或初始目录属性的连接字符串因此无法连接。分离,将 MDF 文件名更改为一致,然后重新附加数据库实际上解决了问题。奇怪,对吧?

4

1 回答 1

1

以这种方式使用密码:&quot;+abc-def(;&quot;

像:

<add name="conn" providerName="System.Data.SqlClient" connectionString="Server=SERVERNAME; Initial Catalog=INITIALDB; UID=username; PWD=&quot;+abc-def(;&quot;" />
于 2011-12-19T23:19:57.593 回答