连接模板,重置连接和循环通过



背景故事我正在使用SAGE Mas 200软件,试图通过Access链接到它。 该软件为我公司提供了300名投资者的日期。 对于每个投资者,我都有一个不同的投资者ID,该ID与登录时的UID和密码一起出现,因此每个连接字符串都是不同的。

经过数小时的反复试验,我成功地通过 Access 进行连接,结果发现每个数据库只能有一个活动连接字符串。 由于我需要从中提取数据的 300 名投资者,因此存在问题......我想不通。

我是 VBA 的新手,所以我的知识非常有限。 我已经阅读了有关链接到带有连接字符串的"模板"文件的信息,但不确定如何格式化模板文件。 有人可以给我举个例子吗? 此外,如何让它遍历存储在数据库中的每个查询,然后拉取适当的连接字符串?

示例以下是我的连接字符串的示例,其中"AAL"是投资者代码:

ODBC;DSN=SOTAMAS90;UID=tbard|AAL;PWD=password;Directory=\mas-200MAS90;Prefix=\mas-200MAS90SY, \mas-200MAS90==;ViewDLL=\mas-200MAS90HOME;SERVER=NotTheServer

此查询名称将为MAS_AAL。

另一个投资者:SMP,查询名称MAS_SMP。 等等,等等等等...

有人可以在隧道尽头成为我的光并帮助我,这样我就不必手动运行 300 个查询。 我快死在这里了!!

可以通过编程方式设置连接字符串。

有一个 MAS 90/MAS 200 ODBC 驱动程序称为 SOTAMAS90。 在过去 5 年的 MAS 安装中,同时有 32 位和 64 位驱动程序。

在 VBA 中,如果我没记错的话,你会做这样的事情。 (这假设您已经获取了所需的投资者对象,并且它具有称为用户名和密码的属性):

Dim conn as new ADODB.Connection()
' Set properties of connection string manually
conn.ConnectionString = "DRIVER = SOTAMAS90; UID=" & myInvestor.username & "; PWD=" & myInvestor.password & "; Company=ABC"
conn.Open()

另一种方法是在 Access 中使用单个 ODBC 连接,使用 Access 的"获取外部数据"功能设置链接的 ODBC 表。 然后,您可以像对待任何其他 Access 表一样对待它,并直接查询它。 此方法的问题在于,Access 将不断提示您输入凭据,无论是在您首次打开表时,还是在您处于非活动状态一段时间时。 我被告知您可以将 UID 和密码保存在 ODBC SOTAMAS90连接中,但我从未这样做过。

希望有帮助。

亚伦

相关内容

  • 没有找到相关文章

最新更新