与 SQL Server 的远程连接不会更新数据



我有 2 个虚拟机用于测试目的。

  • 机器 1 Windows 7 SP1(脚本机(有一个运行 VB 脚本和 MS SQL 管理工作室设置的软件(西门子 TIA v15
  • (。
  • 机器2 Windows 10(DB机器(设置了MS SQL Server Standard 2019(64位(和MS SQL Management studio。

对象:
我想将数据从机器 1 上的 VB 脚本远程写入机器 2 的数据库。

过程:
在机器 1 上,我在 (系统 DSN( 下创建了 ODBC 连接,称为TIBA_R,并为我在 MS 管理工作室下创建的用户提供了 SQL 身份验证。在我的 VB 脚本中,我有以下连接字符串:

Provider=MSDASQL;DSN=TIBA_R;UID=tiba_admin;PWD=asd@1234

在机器 2 上,我创建了相同的 DSN(我在某处读到并原谅我缺乏知识(脸红(.
I 测试 DSN 的连接,一切似乎都很好。但是,当我的脚本从机器 1 运行时,机器 2.
的表中没有应用任何数据,我通过 ping 测试了 2 个虚拟机之间的网络并且正在工作。我在机器 1 上的本地数据库上测试了我的 VB 脚本,并且工作正常。

问:
如何让机器 1 上的 VB 脚本连接到机器 2 上的数据库并应用表中的数据?对于此应用程序,使用 ODBC 是否正确?我能做错什么?

注意:这是我的VB脚本的示例,如果它会有所帮助。我还附上了DSN配置的照片

Dim objConnection
Dim strConnectionString
Dim lngValue
Dim strSQL
Dim objCommand
strConnectionString = "Provider=MSDASQL;DSN=TIBA_R;UID=tiba_admin;PWD=asd@1234;"
lngValue = HMIRuntime.Tags("Tag_2").Read
strSQL = "INSERT INTO table1 (data) VALUES (" & lngValue & ");"
Set objConnection = CreateObject("ADODB.Connection")
objConnection.ConnectionString = strConnectionString
objConnection.Open
Set objCommand = CreateObject("ADODB.Command")
With objCommand
.ActiveConnection = objConnection
.CommandText = strSQL
End With
objCommand.Execute
Set objCommand = Nothing
objConnection.Close
Set objConnection = Nothing

DSN配置

感谢您的帮助。事实证明,问题出在(sqlrowser(服务中,因为它被禁用了。

最新更新