http://qs1969.pair.com?node_id=82229

Lynn has asked for the wisdom of the Perl Monks concerning the following question:

When attempting to insert data into an access database I have discovered that none of the fields can be left blank. I have worked arounded by providing values that are displayed in the form for the user to typeover. Why do I need to provide values and is there a better way to handle this? This is tweaked code. I'm a novice perl writer.
#!/perl/5.005/bin/MSWin32-x86-object/ # Use the module use CGI; # Use the ODBC module use Win32::ODBC; # Create a connection to the form $q = new CGI; # Define the DSN $dsn = "helpdeskevaldb"; # Create a connection to the DSN $db = new Win32::ODBC($dsn); # Output the header and the start of the HTML print $q -> header(); print $q -> start_html(-title=>'Evaluation Form'); # Query the form fields $ID = $q -> param('ID'); $STFN = $q -> param('STFN'); $STLN = $q -> param('STLN'); $SRTLookup = $q -> param('SRTLookup'); $ToPRLookup = $q -> param('ToPRLookup'); $PSKLookup = $q -> param('PSKLookup'); $OSRLookup = $q -> param('OSRLookup'); $AC = $q -> param('AC'); $FN = $q -> param('FN'); $LN = $q -> param('LN'); $Dept = $q -> param('Dept'); $Phone = $q -> param('Phone'); # Save the form field data to the database my $rc = $db -> Sql("INSERT INTO EVAL (ID, STFN, STLN, SRTLookup, T +oPRLookup, PSKLookup, OSRLookup, AC, FN, LN, Dept, Phone) VALUES ('$ID','$STFN','$STLN','$SRTLookup','$ToPRLookup','$PSKLooku +p','$OSRLookup','$AC','$FN','$LN','$Dept','$Phone')"); # Return a success message print $q -> h1("Thank You for participating in our survey!"); print $q -> p("Data saved to database."); # Close the connection to the DSN $db -> Close(); # End the HTML and exit the script print $q -> end_html(); exit(0);