我的目标是将数据导入Microsoft Access以创建一个数据库,我可以从excel仪表板中引用该数据库进行分析。
我找不到有关如何连接访问权限以允许我在phpPgAdmin上查询数据库的任何信息。
高度赞赏任何建议,方向或解决方案。
请让我知道是否需要更多详细信息。
答案 0 :(得分:2)
MS Access是multifaceted thing,因为许多人倾向于混淆和混淆其前端GUI .exe应用程序和独特的后端数据库(JET / ACE SQL引擎,它们是Windows .dll文件)。大多数情况下,我们指的是其MS Office应用程序。从技术上讲,MS Access与phppgadmin实际上是同一类型的产品:数据库的GUI控制台,仅其默认数据库是上述引擎,但也可以集成其他ODBC / OLEDB连接的后端,包括Postgres,Oracle,MySQL,SQL Server,等等
通过各种方法,您可以将MS Access作为PostgreSQL和Excel之间的介质进行集成,而无需任何数据迁移(导出/导入)。
Linked Tables-使用其ODBC Driver直接连接到Postgres表。
Pass-through queries-在MS Access中使用Postgres方言创建保存的查询。
ADO Connections(请参见以编程方式和使用函数的方式导入数据)-绕过MS Access,并使用OLEDB提供程序或ODBC驱动程序使Excel直接连接到Postgres。下面是显示两个连接字符串示例的编程版本,但是您可以通过Excel功能区UI保存连接对象。
Dim strConnection
' REFERENCE Microsoft ActiveX Data Objects, #.# Library
Dim conn As ADODB.Connection, rst As ADODB.Recordset
' ODBC AND OLEDB CONNECTIONS (SELECT ONE)
strConnection = "Driver={PostgreSQL};Server=IPaddress;Port=5432;" _
& "Database=myDataBase;Uid=myUsername;Pwd=myPassword;"
strConnection = "Provider=PostgreSQL OLE DB Provider;Data Source=myServerAddress;" _
& "location=myDataBase;User ID=myUsername;password=myPassword;"
conn.Open strConnection
rst.Open "SELECT * FROM myPGTable", conn
顺便说一句,上面是要在Excel宏中运行的VBA版本,但是ADO是COM对象,因此可以集成到COM接口语言中,包括PHP,Python,R,Java等。