I came to StackOverflow looking for the answer to this question, but since it wasn’t, I thought that I myself had to answer this question.
The MySQL command line client is linked to the GNU Readline library to ensure tab completion, and since the MySQL client parses .inputrc (as can be seen from using strace to check system calls made by the MySQL client), I thought it would pay attention to options such as set completion-ignore-case On . Unfortunately, this is not the case.
Use the source, Luke
Although I am not a C ++ developer, I have studied the source code for the command line client .
You can see that the build_completion_hash() function adds names such as SQL Keywords, table names, and field names to a hash (a fast and efficient form of data structure) that is used to ensure completion. However, the part that adds the SQL commands to the hash simply adds the following list of SQL commands .
Most of these SQL commands are uppercase, but there are a few exceptions, such as create database , create table , show databases , show fields from are listed in lowercase. Because the SQL keywords in this generated list are uppercase, termination does not work when SQL keywords are entered in lowercase.
This list used a short list of SQL commands (in lower case), for example select , drop , insert . However, in January 2008, this short list was replaced by the generated list of SQL commands supported by MySQL.
Note. . I am connected to the MariaDB MySQL fork source, as it is more accessible over the Internet. MariaDB is a binary compatible fork from the MySQL database that Oracle now owns (the project is managed by the same people for MySQL AB). From checking the history of version control, the parts of the client code that Ive referenced havent changed a lot over the past few years.
TL; DR: the answer seems no.