无法通过ConnectionString连接到SQL DB,但可以通过ssms

时间:2017-09-05 14:24:11

标签: c# sql-server permissions

有远程sql server和本地C#app。

我可以通过ssms连接到DB 命令 '" C:\ Program Files(x86)\ Microsoft SQL Server \ 140 \ Tools \ Binn \ ManagementStudio \ Ssms.exe" -S server -U user -P password' 表现很好

但在代码中

我的ConnectionString:

connectionString =" Data Source = Server; Initial Catalog = DB; integrated security = false; User ID = user;密码=密码;"的providerName =" System.Data.SqlClient的"

当我尝试打开连接时

        using (var conn = new SqlConnection(_connectionString))
        {
            conn.Open();

我收到错误 "无法打开数据库" DB"登录请求。登录失败。用户' 用户'"

的登录失败

怎么可能?我已经设法通过使用相同的用户连接并通过ssms传递到此服务器! 什么其他权限应该让sql-user通过C#-application连接到DB?

P.S在DB服务器端,这一点是(99.9%)。还有一些权限。因为与另一个远程服务器一切正常。

1 个答案:

答案 0 :(得分:1)

默认情况下,SSMS连接到数据库 Master ,但您的应用尝试连接到特定数据库。也许您没有足够的权限连接到指定的数据库。 尝试使用SSMS使用以下命令连接到服务器:

"C:\Program Files (x86)\Microsoft SQL Server\140\Tools\Binn\ManagementStudio\Ssms.exe" -S server -d DB -U user -P password

其中DB是来自连接字符串的数据库名称。