public inbox for [email protected]  
help / color / mirror / Atom feed
From: Thom Brown <[email protected]>
To: Anil Sahoo <[email protected]>
Cc: Dave Page <[email protected]>
Cc: pgadmin-hackers <[email protected]>
Subject: Re: Regarding feature #6841
Date: Thu, 18 Apr 2024 15:56:17 +0100
Message-ID: <CAA-aLv78JAHGS3qht7odbNhkePAMUsSrBWGDZWNhe7b85658ng@mail.gmail.com> (raw)
In-Reply-To: <CAO+oWtA13KM+jmWm+MkGbmLps2dh3B06mEZu6-PQjZ0ip7+G6g@mail.gmail.com>
References: <CAO+oWtBxAaDxdPOkcf=bTU0D6sDogX_az4SgN-5zKZt-9G=2xQ@mail.gmail.com>
	<CA+OCxozieNmgfoGFq0G0Mxy+bu2Ct6hK9goZA3xtVJm9EaK6HA@mail.gmail.com>
	<CAO+oWtA13KM+jmWm+MkGbmLps2dh3B06mEZu6-PQjZ0ip7+G6g@mail.gmail.com>

On Thu, Apr 18, 2024, 15:26 Anil Sahoo <[email protected]> wrote:

> Hi Dave,
> We took help from Code Mirror, i.e Code Mirror gives the parsed SQL from
> the editor through a tree called syntaxTree and by using some logic we
> extracted the statements which have semicolon in it and also added some
> extra logic to break the whole query on next of next line as empty or if
> comments are there.
>
> Using all this logic we got the individual queries and checked where our
> cursor is in editor and checked with the query and through this we got the
> actual query at cursor position.
>
> For example,
>
>    1. if the cursor is at starting or ending position or anywhere in
>    between a query with semicolon or without semicolon, that can be single
>    line or multi line then the query gets extracted.
>    2. if the cursor is at starting or ending position or anywhere in
>    between a comment that can be single line or multi line then the comment
>    gets extracted.
>    3. if the cursor is at a position where the previous line has a query
>    then that query gets extracted.
>
> For the anonymous block containing multiple queries, code mirror gives the
> statements differently. That is an incomplete query we can say, so the
> query tool gives error. We can say some limitations are there with Code
> Mirror.
>
> Please let me know if you have any questions on this.
>

I guess my first question is, what is the requirement being fulfilled here?

Also, I have more experience with selecting what to run, and having it run
whatever was selected. I don't see the current proposal as particularly
intuitive. Having the cursor midway through a statement (or even the last
line of a statement) doesn't quite feel right. What would happen in this
example?...

SELECT contents
FROM |mytable
WHERE id BETWEEN 101 AND 200

ORDER BY id ASC;

Note I placed a pipe to represent the cursor before the table name. And
would it make a difference if the first 3 lines were a single line?

In any case, given all statements are separated by semicolons in
PostgreSQL, I am resistant to the idea of supporting them without for
specific features.

Regards

Thom


reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected], [email protected]
  Subject: Re: Regarding feature #6841
  In-Reply-To: <CAA-aLv78JAHGS3qht7odbNhkePAMUsSrBWGDZWNhe7b85658ng@mail.gmail.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox