This is a good suggestion and makes the call more readable. I implemented it. However, it does not solve the issue. Calling:
my $dsn = "dbi:ODBC:Driver={$ODBCdriver};Server=$SQLserver,$SQLport;Da
+tabase=$SQLdatabase;UID=$SQLuser;PWD=$SQLpassword; ...";
Note that I moved ',$SQLport' to Server. This syntax never connects. This is probably because it is not the syntax expected by Perl DBI (all examples on Perlmonks too also use '; Port=1433' which instead always connects no matter the port I use -> this indicates - I guess - that the parameter is not used. To be honest, I have no ideas.