程序将无法连接到SQL Server

时间:2018-03-06 17:14:56

标签: sql-server vb.net connection-string

更新:这是固定的,这要归功于一些很好的帮助。如果您遇到类似问题,请执行以下操作:

  • 在运行
  • 之前启用所有例外
  • 找出尝试连接时遇到的确切错误
  • 确保SQL端的所有用户都将用户分配给该特定数据库的登录名

我已经制作了一个非常好的程序,我已经准备好开始推出测试了。问题是,当我编写所​​有这些时,我只使用了使用我的Windows登录连接到SQL Server的集成安全性。这很好,因为我是整个服务器上的系统管理员,包括有问题的数据库。

现在我已准备好将其推送给其他用户,我需要将代码更改为对所有用户使用我的登录名(硬编码为连接字符串)或使用专门针对该数据库的新登录名。

我使用了以下连接字符串,但它不起作用!我还将服务器添加到服务器资源管理器的数据连接部分,但我想我不知道如何告诉程序在我的代码中使用该连接。

我在下面的代码中对密码进行了模糊处理,但它是在我的代码中写出来的。运行时没有错误或任何错误 - 它只是不连接或拉取数据。

思考?谢谢!

Dim strSQLConn As String = ("Server=Hertz1455;Database=AbsenceApplication;User ID=hac0421;Password=********")

更新 - hertz1455是服务器名称,我没有需要使用的端口。下面是程序启动时的其余代码。我也对我得到的错误评论了一些答案。

Dim strSQLConn As String = "Fleet_PTO.My.MySettings.AbsenceApplicationConnectionString"
Dim strQuery As String
Dim sqlSQLCon As SqlConnection
sqlSQLCon = New SqlConnection(strSQLConn)
    Dim cmd As SqlCommand = New SqlCommand("SELECT person FROM tblSupervisor", sqlSQLCon)
    sqlSQLCon.Open()
    Dim myDA As SqlDataAdapter = New SqlDataAdapter(cmd)
    Dim myDataTable As DataTable = New DataTable
    myDA.Fill(myDataTable)
    sqlSQLCon.Close()

当我将strSqlConn更改为下面的字符串时,一切正常。

Dim strSQLConn As String = ("Data Source=Hertz1455;Initial Catalog=AbsenceApplication;Integrated Security=True")

2 个答案:

答案 0 :(得分:1)

也许你应该添加你正在使用的驱动程序,以便完成它,例如:

Dim strSQLConn As String = ("Server=SQLOLEDB;Server=Hertz1455;Database=AbsenceApplication;User ID=hac0421;Password=********")

" 1455在Server=Hertz1455端口号?在这种情况下,不应该是Server=Hertz:1455吗?

查看this link了解详情。它在C#中,但不会有问题。

答案 1 :(得分:1)

我们只能猜测,因为这个问题有点不清楚,没有任何例外或警告信息。

试试这个:

  1. 随处创建新文本文件。 (比如桌面)
  2. 将扩展名重命名为udl并打开文件。
  3. 你应该看到this窗口。
  4. 测试您的连接,看看您是否可以连接。
  5. Latlica可能与Server=Hertz:1455部分一致,尽管它不是默认的MSSQL端口。

    同时检查服务器的防火墙,它可能会阻止连接请求。您可能会收到异常(例如connection forcefully rejected),但可能不会弹出。检查异常设置,启用所有内容,因为您找到了相对线索。

    注意: 亲爱的未来观众,请关注评论。