§ character

tjakober's profile image tjakober posted 1 year ago in General Permalink

After several years of HeidiSQL use I got my first problem: when I insert a row containing a text which has the character "§" within, this character has a preceding "Â" when querying it:

INSERT INTO queries (qid, name, query) VALUES (25, 'getLabmanager', 'SELECT * FROM users WHERE users.uid=\'§1\'');

querying the row gives:

+-----+---------------+---------------------------------------------+
| qid | name          | query                                       |
+-----+---------------+---------------------------------------------+
|  25 | getLabmanager | SELECT * FROM users WHERE users.uid='§1'   |
+-----+---------------+---------------------------------------------+

(by the way I use a table to store query expressions and replace the parameters which contain §1 etc.)

The column which contains this text is a BLOB. This problem arose when I changed to version 10.9.3-MariaDB-1:10.9.3+maria~ubu2204 when the collation utf8_general_ci has been changed to utf8mb3_general_ci. I don't know whether this is a database problem or it could be also a bug in HeidiSQL.

I am using HeidiSQL version 12.2.0.6576 on windows 10

ansgar's profile image ansgar posted 1 year ago Permalink

Not sure if that makes a difference, but I would recommend to run a test with a utf8mb4_general_ci column, in contrast to utf8mb3_general_ci.

To test whether HeidiSQL's connection collation is wrong, you can fire such a query:

SHOW VARIABLES LIKE 'collat%';

Also, you may find differences when using different API libraries in the session definition: libmariadb.dll should be preferred over libmysql.dll. Only very old MySQL servers should be connected with libmysql.dll.

Please login to leave a reply, or register at first.