in reply to Wondering novice...

Here's my example cleaned up a litlte bit and looking more like "real" code. If you encounter any errors when trying to implement, please post them here. Otherwise it'll be hard to help you fix any problems you're having.
 #!/usr/bin/perl  -w

 # these USE lines generaly go at the top of your program
 # before any other code
 use Fcntl;
 use SDBM_File;

 my %db_email;
 tie (%db_email, 'SDBM_File', './email.db', O_RDWR | O_CREAT, 0666) or die "error opening DB file $!";
 # you need to be sure that the user running the script has 
 # apropriate permissions to create/write the DB file

 my $email='abc@yahoo.com'; 
 # your code to extract the e-mail address should be here

 if(defined $db_email{$email}){
   # already in DB... process apropriately
 }else{
   # not yet in DB
   print "assigning ticket\n";
   $db_email{$email}=982; 
   # your ticket num generating code should
   # be here instead of a hardcoded assignment
                                        
 }
 untie(%db_email);

Les Howard
www.lesandchris.com
Author of Net::Syslog and Number::Spell