The root problem is that the SQL standards mandate that warning list is cleared upon successful completion of certain operations. When you run any batch process HeidiSQL fetches the list of warnings, but only onceāat the end. This is something what could be improved though I'm not sure of what GUI would be appropriate to display a potentially huge list of warnings that are related to a potentially huge list of SQL statements.
(Disclaimer: I'm not a HeidiSQL dev, I'm just a regular user.)
So far, you need a different MySQL client if you want to see the warnings. For instance, HeidiSQL will open the official command-line client (as long as it's installed and configured) at "Tools-> Launch command line". There, you can enable the warnings option and then run your batch with the source command. (You might need to redirect output to a file in order to see something.)
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> \h
For information about MySQL products and services, visit:
http://www.mysql.com/
For developer information, including the MySQL Reference Manual, visit:
http://dev.mysql.com/
To buy MySQL Enterprise support, training, or other products, visit:
https://shop.mysql.com/
List of all MySQL commands:
Note that all text commands must be first on line and end with ';'
? (\?) Synonym for `help'.
clear (\c) Clear the current input statement.
connect (\r) Reconnect to the server. Optional arguments are db and host.
delimiter (\d) Set statement delimiter.
ego (\G) Send command to mysql server, display result vertically.
exit (\q) Exit mysql. Same as quit.
go (\g) Send command to mysql server.
help (\h) Display this help.
notee (\t) Don't write into outfile.
print (\p) Print current command.
prompt (\R) Change your mysql prompt.
quit (\q) Quit mysql.
rehash (\#) Rebuild completion hash.
source (\.) Execute an SQL script file. Takes a file name as an argument.
status (\s) Get status information from the server.
tee (\T) Set outfile [to_outfile]. Append everything into given outfile.
use (\u) Use another database. Takes database name as argument.
charset (\C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets.
warnings (\W) Show warnings after every statement.
nowarning (\w) Don't show warnings after every statement.