Re: Any reasons for 'DO' statement not returning result?

From: Jim Nasby <Jim(dot)Nasby(at)BlueTreble(dot)com>
To: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>, Xtra Coder <xtracoder(at)gmail(dot)com>, Chris Travers <chris(dot)travers(at)gmail(dot)com>
Cc: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Merlin Moncure <mmoncure(at)gmail(dot)com>, PostgreSQL General <pgsql-general(at)postgresql(dot)org>
Subject: Re: Any reasons for 'DO' statement not returning result?
Date: 2016-08-16 20:15:00
Message-ID: 053a34e1-1d4b-5d74-72a3-33e1066afe69@BlueTreble.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 8/16/16 1:05 PM, Adrian Klaver wrote:
> On 08/16/2016 07:54 AM, Jim Nasby wrote:
>> On 8/14/16 5:13 AM, Xtra Coder wrote:
>>> - ability to switch session language from 'sql' to 'pl/pgsql'
>>
>> Actually, something I wish I had was the ability to temporarily switch
>> to an entirely different interpreter (such as ipython), while still
>> retaining current database connection and context. That would be
>> especially useful for debugging plpython functions.
>
> What aspects of ipython are you interested in?

First, it's not ipython in particular, just a python environment. What
would be *really* cool is finding a good way to integrate with Jupyter
Notebook...

Mostly in being able to deal with plpython code. Right now that's
difficult because the plpy object is only exposed inside a plpython
function, and it's a bit painful to get pythonic representations of data
out of the plpython environment and into a python environment.

Outside of that though, there's still useful things that can be done. I
think a big part of why people keep asking to add things like IF/THEN to
psql is because psql is an incredibly useful tool for handling lots of
SQL statements (either DDL or DML). It's much better at that than any
other tool I've seen. BUT, there's a limit to what psql or SQL can do.
String manipulation (for example) pretty much sucks. python (or perl or
...) are quite good at that stuff though.

It's certainly not terribly hard to run a query or two from python. But
a dozen? That becomes very tedious very quickly. And if you're trying to
do this interactively, it just sucks. (No \d et all, no tab completion,
no \h, etc).

So what I ultimately wish for is a way to blend these things together as
needed. What would be truly amazing is if we had a way to pass a
database connection around to different tools. Do a bunch of SQL stuff
within psql... now I need to deal with a plpython function; do that in
Jupyter... now I'm back to SQL, go back to psql.

I wonder how hard it would be to allow psql to expose a local port that
other stuff could connect to...
--
Jim Nasby, Data Architect, Blue Treble Consulting, Austin TX
Experts in Analytics, Data Architecture and PostgreSQL
Data in Trouble? Get it in Treble! http://BlueTreble.com
855-TREBLE2 (855-873-2532) mobile: 512-569-9461

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Jim Nasby 2016-08-16 20:22:09 Re: [GENERAL] C++ port of Postgres
Previous Message Jim Nasby 2016-08-16 20:04:37 Re: C++ port of Postgres