程序将无法连接到SQL Server

问题描述 投票:0回答:2

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

  • 运行前启用所有异常
  • 找出尝试连接时遇到的确切错误
  • 确保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")
sql-server vb.net connection-string
2个回答
1
投票

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

试试这个:

  1. 随处创建新文本文件。 (比如桌面)
  2. 将扩展名重命名为udl并打开该文件。
  3. 你应该看到this窗口。
  4. 测试您的连接,看看您是否可以连接。

使用Server=Hertz:1455部分时,Lat94可能是正确的,尽管它不是默认的MSSQL端口。

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

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


1
投票

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

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

是“1455在Server=Hertz1455的港口号码?在这种情况下,不应该是Server=Hertz:1455吗?

查看this link了解更多信息。它在C#中,但不会有问题。

© www.soinside.com 2019 - 2024. All rights reserved.