如何将Google电子表格链接到PostgreSQL?我用谷歌搜索并获得了一些MySQL的示例代码,以及一些产品。根据此link,支持几个数据库。
答案 0 :(得分:3)
我的方法是使用R及其googlesheets和DBI库。 Googlesheets将电子表格与R连接,DBI将R与PostgreSQL连接起来。只需运行脚本,您就可以随时更新表。使用此方法,您还可以在将数据存储到PostgreSQL之前向数据添加转换。另一种方法是使用Python和pandas以及gspread库。
更多信息: Googlesheets:https://cran.r-project.org/web/packages/googlesheets/vignettes/basic-usage.html
DBI:https://cran.r-project.org/web/packages/DBI/vignettes/DBI-1.html
答案 1 :(得分:2)
您还可以使用我们的自助服务报告工具Kloudio将您的Google表格连接到PostgreSQL数据库,并将其集成以进行下载和上传。此外,您可以根据需要安排刷新,以便Google表单保持更新。无需每次都手动运行查询。
答案 2 :(得分:1)
答案 3 :(得分:1)
你应该看看QueryClips。您正在描述其主要用例。
答案 4 :(得分:1)
Seekwell对此非常有用。 Google Suite插件可让您在表单中运行查询并安排报告。
答案 5 :(得分:1)
我们一直在通过PostgreSQL Foreign Data Wrappers将Google Sheets引入QGIS。然后,我们建立一个物化视图,将记录连接到几何(例如,通过学校编号),并将该物化视图用作标准空间表。
从那里我们还通过node.js将这个“谷歌表实例化视图”发布到了Web应用程序,并添加了一个按钮,以在Google表数据已更改时刷新地图。效果很好。
(注意:多角形FDW的gsspreadsheet扩展名得到了可维护的维护,存在GSheets API v4可能破坏它的风险……我们尚不知道,并且正在计划可能的可能性如果确实中断了,则必须实施方法2(如下)。)
要通过PostgreSQL FDW连接到Google表格,请使用Multicorn FDW:
https://github.com/Kozea/Multicorn
然后为Multicorn安装gspreadsheet_fdw扩展名:
https://github.com/lincolnturner/gspreadsheet_fdw
在PostgreSQL中,创建多角FDW:
CREATE SERVER multicorn_gspreadsheet
FOREIGN DATA WRAPPER multicorn
OPTIONS (wrapper 'gspreadsheet_fdw.GspreadsheetFdw');
然后使用multicorn的gspreadsheet扩展名创建连接到Google表格的FDW表:
CREATE FOREIGN TABLE speced_fdw.centerprogram_current_gsheet (
column1 integer NULL,
column2 varchar NULL,
column3 varchar NULL
)
SERVER multicorn_gspreadsheet
OPTIONS (keyfile '/usr/pgsql-9.5/share/credential.json', gskey 'example_d33lk2kdislids');
您现在有了一个外部表,该表直接指向您的Google表格,您可以从中建立物化视图。
另一种选择是直接从PostgreSQL使用FILE_FDW并使用WGET连接到GSheet的CSV导出。
首先,创建服务器:
CREATE SERVER fdw_files
FOREIGN DATA WRAPPER file_fdw
OPTIONS ()
然后创建FDW表:
CREATE FOREIGN TABLE public.test_file_fdw (
"name" varchar NOT NULL,
"date" varchar NULL,
"address" varchar NULL
)
SERVER fdw_files
OPTIONS (program 'wget -q -O - "https://docs.google.com/spreadsheets/d/2343randomurlcharacters_r0/export?gid=969976&format=csv"', format 'csv', header 'true');
上面列出了wget的选项:https://www.gnu.org/software/wget/manual/html_node/HTTP-Options.html
答案 6 :(得分:0)
如果您使用的是python,则可以使用Google app script和数据库连接器,例如psycopg2,如果使用的是节点,则可以使用node-postgres。在某些服务器上运行数据库连接器,使用REST API对其进行连接,然后使用Google表格中的应用脚本获取数据。
您需要弄清楚的一件事就是权限(Google称其为scopes)。
您可以构建一个插件并在内部发布。这是good tutorial上的操作方法。
如果您不想构建自己的插件,则可以使用database connectors,例如来自Google市场的 Castodia ,Kpibees和Seekwell。他们大多数都支持Postgres。