Skip to main content

Multicorn-based PostgreSQL foreign data wrapper for Google Spreadsheets

Project description

Google Spreadsheets FDW

Multicorn based PostgreSQL foreign data wrapper for Google Spreadsheets

Installation

Requirements

PostgreSQL 9.1+ with Multicorn extension installed.

If you haven't used Multicorn yet, enable it with:

create extension multicorn;

From source:

git clone https://github.com/TheDeadJoe/google_spreadsheets_fdw
cd google_spreadsheets_fdw
python setup.py install

Usage

create server multicorn_srv foreign data wrapper multicorn options (
    wrapper 'google_spreadsheets_fdw.GoogleSpreadsheetFDW'
);

create foreign table my_table (
    id int default nextval('my_seq'),
    foo varchar,
    bar int,
    baz float
) server multicorn_srv options (
    gskey 'zVshdGDuaQKKaQoXqNOwjeTWcxcUtOlSJDZoLeIMUsYx',
    keyfile '/path/to/credentials.json',
    sheet '0',
    row_id 'id'
);

Options

  • gskey - "ID" of a spreadsheet (the 44 char length part between /spreadsheets/d/ and /edit/ from spreadsheet URL)
  • keyfile - path to Google Cloud Services credentials json file
  • sheet - index of a sheet
  • row_id - name of the column which value will be treated as an ID of the whole row

Example

We start with an empty spreadsheet:

1

Let's insert some data into it:

insert into my_table(foo, bar, baz) values ('a', 1, 0.1);
insert into my_table(foo, bar, baz) values ('b', 2, 0.2);
insert into my_table(foo, bar, baz) values ('c', 3, 0.3);
insert into my_table(baz, bar, foo) values (0.4, 4, 'd') returning *;

Spreadsheet contains our data.

2

Now let's try retrieve the data:

select * from my_table;

The result:

3

Of course, we can also perform other SQL operations e.g.:

update my_table set bar = 9, baz = 0.9 where bar = 2;

delete from my_table where bar > 5;

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

google_spreadsheets_fdw-1.0.3.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

google_spreadsheets_fdw-1.0.3-py3-none-any.whl (5.3 kB view details)

Uploaded Python 3

File details

Details for the file google_spreadsheets_fdw-1.0.3.tar.gz.

File metadata

File hashes

Hashes for google_spreadsheets_fdw-1.0.3.tar.gz
Algorithm Hash digest
SHA256 a953a10ec5f384f09368103700fd5ed22fb2eb3c2017fb2d48009bdafa755924
MD5 7756b4076afd1fb41c82fc9936f4657d
BLAKE2b-256 38aaac57a4db5467ab518a4515045e3bb6ad7c1185c6c59201cefa75535121c3

See more details on using hashes here.

File details

Details for the file google_spreadsheets_fdw-1.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for google_spreadsheets_fdw-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 80a91d303f99dc10b7cb3c593b1ca535b88f00c86cf6d45a4635e16b175370f3
MD5 ddf1078f43d02503ab5f12e41548a10e
BLAKE2b-256 b3b6ead91f7b25cfa1aa439bbdb597e7a8af64446ac3518f26a010a53654dc5f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page