首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用于远程Server的ConnectionString

用于远程Server的ConnectionString
EN

Stack Overflow用户
提问于 2015-05-04 12:33:36
回答 3查看 7.5K关注 0票数 0

在这种情况下,我想连接到位于远程服务器上的SQL2008R2,我可以远程进入服务器,并且在我以管理员身份登录到windows上之后,我在server上工作(到SQL的连接是通过Windows身份验证)。

我正在开发一个需要与SQL连接的WinForms应用程序,我尝试了几个connectionString,但都没有成功,例如:

代码语言:javascript
复制
public static string strCon = @"Server=190.xxx.xxx.xxx\ServerName,1433;Database=DataBaseName;Integrated Security=false;User ID=User;Password=Pass";

public static string strCon = @"Data Source=190.xxx.xxx.xxx\ServerName,1433;Network Library=DBMSSOCN;Initial Catalog=DataBaseName;User ID=User;Password=Pass;

我是不是遗漏了什么?在我试着联系之前,我应该做点别的吗?

我想我在windows身份验证方面有点混乱,我能绕过它直接连接到SQL吗?

注意,远程连接是在服务器上启用的,我检查了端口为1433。

编辑:

在我寻找解决方案时,我找到了这个问题,我意识到当我远程连接到服务器时,我使用了一个端口(190.xxx.xxx.xxx:yyyy)。我的问题就在这里,不是吗?

EDIT2:我的解决方案:我使用的connectionString很好,问题是端口。我打开它是为了我的办公室IP,每件事都很有魅力。

EN

回答 3

Stack Overflow用户

发布于 2015-05-04 12:51:51

我强烈建议您使用SqlConnectionStringBuilder类,它允许您通过属性配置连接字符串,并确保创建了有效的连接字符串。

像这样使用它:

代码语言:javascript
复制
SqlConnectionStringBuilder b = new SqlConnectionStringBuilder();
b.DataSource = "190.xxx.xxx.xxx\ServerName";
b.InitialCatalog = "DataBaseName";
b.IntegratedSecurity = false;
b.UserId = "...";
b.Password = "...";

string connectionString = b.ConnectionString;
票数 2
EN

Stack Overflow用户

发布于 2015-05-04 12:38:23

如果您想连接到Windows身份验证,您应该使用:

代码语言:javascript
复制
public static string strCon = @"Data Source=190.xxx.xxx.xxx\ServerName,1433;Database=DataBaseName;Integrated Security=True";

还请注意,1433是默认的sql端口,因此不必指定它。你可以直接写:

代码语言:javascript
复制
public static string strCon = @"Data Source=190.xxx.xxx.xxx\ServerName;Database=DataBaseName;Integrated Security=True";

在这种情况下,不应该指定User NamePassword,因为它将使用当前会话的Windows帐户。

您可以找到有关Server连接字符串这里的更多详细信息

票数 1
EN

Stack Overflow用户

发布于 2015-05-04 12:39:02

如果要连接用户id和密码,就忘记了IntegratedSecurity属性。

代码语言:javascript
复制
public static string strCon = @"Data Source=190.xxx.xxx.xxx\ServerName,1433;Network Library=DBMSSOCN;Initial Catalog=DataBaseName;Integrated Security=False;User ID=User;Password=Pass;

否则:

代码语言:javascript
复制
public static string strCon = @"Data Source=190.xxx.xxx.xxx\ServerName,1433;Network Library=DBMSSOCN;Initial Catalog=DataBaseName;Integrated Security=True;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30030318

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档