Regular Expressions
Take a file full of SQL queries and surround the values in the first paren only with backticks. As the sample queries show, there aren't a set number of values in the query.
Grab all the values out of the first set of parens, use Perl's split and join to surround each value with backticks, and print out the result.
Sample line:
INSERT INTO seen (nick, "when", "where", what) 
    VALUES ('RiSE', '2003-08-03 20:42:04-05', '#foo', 'Part');

INSERT INTO seen (nick, "when", "where", what, something) 
    VALUES ('RiSE', '2003-08-03 20:42:04-05', '#foo', 'Part');

INSERT INTO seen (nick, "when", "where", what, something, else) 
    VALUES ('RiSE', '2003-08-03 20:42:04-05', '#foo', 'Part');


# if the line has has parens then process it, otherwise just print the line out
   if(/^([^(]+\()	# match some number of nonparens, then a paren,
      			# and put it into the  variable

      (.*?)		# match anycharacter, but as few as possible, so you
      			# don't go past the very next closing paren.  Then put
			# what you match in  variable

      (\).*$)		# match a closing paren, and anything else up to the
      			# end of the line.  put it in the  variable
      $a=$1;	# store these temporary variables somewhere

      $b =~ s/"//g;	# strip any quotes (could strip other 'bad' chars here)
      $b = "`" . 	# start with an opening backtick
      	join("`, `", 	# join each item from the array output from the 
			# following split command into a single string, with	
			# each item separated with `, `

		split(/,\s*/, $b))	# this split command takes each comma
					# delimited item and splits it into an
					# individual string in an array

	  . "`"; 	# put the closing ` on the string

      print "$a$b$c\n";

Tux the Linux Penguin.