Subject: bug#74996: 28.2; sql interactive mode prints output of executed query where the pointer is instead of the bottom of the buffer

From: José Júnior <[email-masked]>
Date: Fri, 20 Dec 2024 17:13:02 -0300

I think because the issue is where the output is printed on the buffer, so it would be something after the mysql package gives the output to Emacs.

As I understand, the mysql package only gives the output of the SQL query to Emacs, then Emacs should be in control to where to print it. And since it's taking into account where the pointer is to print the output, it seems to be the case.

>> Date: Fri, 20 Dec 2024 16:03:59 -0300
>> Cc: [email-masked]
>> From: José Júnior <[email-masked]>
>>
>> Alright, I'll try.
>>
>> 1. Install mysql or mariadb, on Debian I installed the package `mysql-common`
>>
>> `sudo apt install mysql-common`
>>
>> 2. Start the mysql/mariadb server:
>>
>> `sudo service mysql start`
>>
>> 3. Log in into the server and create a unprivileged user in the interactive mysql shell:
>>
>> `sudo mysql -u root`
>>
>> `CREATE USER 'user'@'localhost' IDENTIFIED BY 'password';`
>>
>> 4. On Emacs, create a new buffer like `*sql*`, then enable sql-mode `M-x sql-mode`;
>>
>> 5. Connect to the server using `sql-mysql` by providing the values for what's prompted:
>>
>> - user: user
>>
>> - password: password
>>
>> - database: (leave it empty)
>>
>> - host: localhost
>>
>> A sql-interactive-mode buffer should be opened if the connection is successful.
>>
>> 6. In ther *sql* buffer enter the following query:
>>
>> `show databases;`
>>
>> And press `C-c C-c` (sql-send-paragraph) on the line of this query to send it to the server;
>>
>> An output of this query should be printed on the interactive buffer.
>>
>> 7. Now switch to the interactive buffer, move the pointer to a line where the output of the previous action was printed.
>>
>> 8. Switch to the *sql* buffer and press `C-C C-c` to send the command again.
>>
>> Now you should see that the second execution is mixed with the previous one.
> Thanks.  If this needs the mysql package, then why do you think the
> problem is in Emacs and not in mysql?  (Apologies if this makes no
> sense: I know nothing about mysql and almost nothing about sql-mode.)