Re: Error in Query Builder: multi-line sql

From: Guillaume Lelarge <guillaume(at)lelarge(dot)info>
To: Colin Beckingham <colbec(at)start(dot)ca>
Cc: pgadmin-support(at)postgresql(dot)org
Subject: Re: Error in Query Builder: multi-line sql
Date: 2012-03-10 15:45:03
Message-ID: 1331394303.2339.14.camel@localhost.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-support

On Sat, 2012-03-10 at 09:59 -0500, Colin Beckingham wrote:
>
> On 03/10/2012 09:19 AM, Colin Beckingham wrote:
> >
> >
> > On 03/10/2012 08:38 AM, Guillaume Lelarge wrote:
> >> On Fri, 2012-03-09 at 05:09 -0500, Colin Beckingham wrote:
> >>> [...]
> >>> select distinct on (mname, nname) mname, nname from grammar \
> >>> inner join majors using (mid) \
> >>> inner join minors using (nid) \
> >>> inner join jxgp using (gid) \
> >>> where jxgp.pid = 9
> >>>
> >>
> >> It seems hard to reproduce. Can you send me the tables's definition?
> >> (grammar, majors, minors, jxpg) It'll be easier and quicker for me than
> >> trying to figure out their definitions. Thanks.
> >>
> >
> > OK here is some more detail:
> > In order to eliminate the possibility it was the definitions of my
> > tables that are the issue, I tried this:
> >
> > CREATE TABLE one
> > (
> > col1 integer,
> > col2 text
> > )
> > WITH (
> > OIDS=FALSE
> > );
> >
> > now create table two identical to one above. I think the oids are
> > irrelevant in this case. Neither table contains any data.
> >
> > Use Kwrite (I also tried with text cut and paste from Libreoffice
> > writer) to create text as follows:
> >
> > sql = "select distinct on (one.col2) one.col2 \
> > from one \
> > inner join two \
> > using (col1)"
> >
> > Now open QB and paste in the text from Kwrite, remove the \ chars and
> > other non-sql in the text and try to run the query, which runs fine, it
> > just does not have any rows, ok. You can probably just paste in the sql,
> > but I wanted to reproduce the Python format.
> >
> > Now we will crash the sql editor: with mouse highlight the opening
> > parenthesis of "(one.col2" and try to delete it with a backspace key. QB
> > editor becomes unusable. I find this is completely consistent on my system.
> >
>
> This seems to be related to the number of lines in the text.
> With the following arbitrary statements (not related to any real db at
> all) the first two, when cut and pasted into the window by themselves,
> edit correctly. The second two fail when evaluating pairs of parentheses.
>
> When deleting, say, the '(' from say line 2, line 2 remains visible
> while the other lines disappear into the blue cloud.
>
> However, when pasting all the lines from below into the window and
> removing a '(', the text remains visible but the window is not usable
> until you slide the horizontal bar right and left, which forces a
> refresh of the window contents.
>
> ==============
>
> select distinct on (junk)
> from (junk)
> inner join junk using (junk)
>
> select distinct on (junk)
> from (junk)
> inner join junk using (junk)
> inner join junk using (junk)
>
> select distinct on (junk)
> from (junk)
> inner join junk using (junk)
> inner join junk using (junk)
> inner join junk using (junk)
>
> select distinct on (junk)
> from (junk)
> inner join junk using (junk)
> inner join junk using (junk)
> inner join junk using (junk)
> inner join junk using (junk)
>

I don't reproduce your issue at all. The only difference with you is
that I'm using Fedora. Don't see how the OS difference could be an issue
for you.

--
Guillaume
http://blog.guillaume.lelarge.info
http://www.dalibo.com

In response to

Browse pgadmin-support by date

  From Date Subject
Next Message Colin Beckingham 2012-03-10 16:41:51 QB - record count incorrect
Previous Message Colin Beckingham 2012-03-10 14:59:22 Re: Error in Query Builder: multi-line sql