【发布时间】:2015-01-28 04:38:29
【问题描述】:
我正在使用一个访问程序,它需要访问我们的 PostgreSQL 服务器上的一些数据。我遇到的问题是链接是只读的。如果我使用访问中的菜单项来创建链接,那么它可以正常工作。我的最终用户将使用运行时访问权限,因此无权访问菜单。
这是进行链接的代码:
Sub createLinkedTable_PostgreSQL(PostgreSQL_tableName As String)
Dim cdb As DAO.Database, tbd As DAO.TableDef
Set cdb = CurrentDb
Set tbd = New DAO.TableDef
tbd.Connect = "ODBC;Driver={PostgreSQL ANSI};Server=10.10.10.200;Port=5432;Database=BIO-Static;" & _
"UID=UserID;PWD=Password;"
tbd.SourceTableName = PostgreSQL_tableName
tbd.Name = Replace(PostgreSQL_tableName, ".", "_", 1, -1, vbTextCompare)
' e.g. "public.table1"->"public_table1"
cdb.TableDefs.Append tbd
Set tbd = Nothing
Set cdb = Nothing
End Sub
如何让它以更新模式打开表格?
【问题讨论】:
-
这有帮助吗?不确定,但这可能是一个开始:support.microsoft.com/kb/276035
-
谢谢!看起来这是一个主键问题。当我将 PK 添加到表中时,它工作得很好。
标签: vba postgresql ms-access-2010 dao