in reply to Re^5: Perl CGI and SQL statements
in thread Perl CGI and SQL statements

my $db = new Win32::ODBC('$DSN');

Firstly, you need to either remove the tic marks or use double quotes. The way this is written, you're sending exactly $DSN as a string. If you want to send what $DSN is set to, then use: my $db = new Win32::ODBC($DSN);

Secondly, this probably explains the next problem... $db is undefined because the instance creation failed. In other words, after you do this:

my $db = new Win32::ODBC($DSN);

You should check $db to verify that the object was created successfuly. If it could not connect, then $db will be undefined. The error you are seeing is because you can't call the function Sql on an undefined $db variable.

Seriously, a little time with the perl debugger, now that you've got compilable code, would help you understand what's going on.

Neat Debugger tricks

Re: Linux vs. Windows for Learning Perl

perl debugger

Hazah! I'm Employed!