连接字符串

时间:2016-05-28 15:22:56

标签: sql sql-server database web-services connection-string

我的连接字符串有问题。从服务器使用Web服务时,我看到此错误:

  

初始化字符串的格式不符合从索引114开始的规范

但在当地主持人我没有任何问题。我的连接字符串是:

name="DB_nodeEntities1"        
connectionString="metadata=res://*/Models.Node.csdl|res://*/Models.Node.ssdl|res://*/Models.Node.msl;
provider=System.Data.SqlClient;
provider connection string="
data source=xx.xxx.xxx.xx,1433;
initial catalog=my db name;
integrated security=True;
MultipleActiveResultSets=True;
App=EntityFramework"
User Id=my id;
Password=my pass" 
providerName="System.Data.EntityClient"

2 个答案:

答案 0 :(得分:0)

我认为这与服务器安全策略有关。 例如,某些SQL服务器不允许您进行远程访问,您应该在本地连接。也许发生在你身上的是这样的事情。在这种情况下,您的托管服务和数据库引擎应该在同一台服务器上,也请联系您的服务器管理员。

让我知道发生异常时,是否会在您的计算机上以调试模式运行网站时发生?如果是,我建议你在服务器上进行测试。

您的服务器类型(Linux和Windows)是什么以及您使用哪种语言来实现。 但如果您使用Windows服务器托管和数据库引擎并在.Net框架中实现我有一些基于您的错误的建议。 首先检查这个link。 其次,如果无法连接,请直接在SQL Server管理工作室中检查您的连接,因此它清楚地表明您没有权限并且首次理论得到确认。

答案 1 :(得分:-1)

您是否厌倦了通过UDL文件创建连接字符串并将其复制并粘贴到您的代码中?

  1. 打开文件资源管理器,在您想要的任何地方,创建一个新的文本文件,但将扩展名更改为.udl而不是.txt。
  2. 双击打开新的.udl文件,您将看到以下内容;
  3. 使用提供程序选项卡可以选择要连接的数据源类型,然后选择Microsoft OLE DB Provider for SQL Server。
  4. 在连接选项卡上,您可以单击服务器名称的下拉列表,它将显示已找到的可以连接的SQL服务器列表。在过去,我看到这不能很好地工作,因此您可以手动输入您的服务器名称。然后,您可以指定登录类型,该登录类型将是Windows身份验证(使用当前登录的用户详细信息登录到SQL Server)或提供用户名和密码。
  5. 您会注意到特定用户名和密码的选项,有2个勾选框。如果您要使用的登录名不需要密码,请确保选中空密码框,只需将密码文本框留空即可。允许保存密码将密码值保存为连接字符串中的原始文本值(即,易于阅读)。您可以加密应用程序配置文件中的连接字符串,稍后我会解释,我总是勾选此框,但我会将其留给您。
  6. 您现在已准备好在服务器上选择要连接的数据库,单击服务器上的数据库下拉箭头下拉列表将显示您能够连接到的所有数据库以及您刚刚提供的登录详细信息
  7. 完成所有操作后,单击“测试连接”,它应该可以正常工作。如果您遇到任何故障,那么消息框将提供一些帮助,但很可能是错误的登录详细信息,或者您根本无法访问数据库。
  8. 现在单击“确定”关闭此对话框,关闭此对话框的任何其他方式都将丢失您的工作。在文件资源管理器中,右键单击.udl文件,选择打开并选择NotePad(或任何其他文本编辑器)。
  9. 现在在记事本中,你有连接字符串!您只想复制在Provider = SQLOLEDB.1;。
  10. 之后开始的部分

    我有一篇博文here,解释了如何做到这一点。