Capital letters causing problems =[

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • minimatrix
    New Member
    • Nov 2008
    • 5

    Capital letters causing problems =[

    Hi guys just wandering if I could get a little help! , I have wrote a Perl script to sort out some data in my database, I am saving into an sql file but having a few problems executing the sql because of capital letters.

    I have been given a list of 'From' and 'To' names, as there are multiple entries in my DB eg. Fred Bloggs, Bloggs Fred, F Bloggs are all the same person but I have organised the list like so.

    Bloggs Fred, Fred Bloggs
    F Bloggs, Fred Bloggs
    Fred Bloggs, Fred Bloggs

    So values on the left are 'From' and values on the right are 'To'.

    heres my code:

    Code:
    #!perl.exe
    # script to CLEAN the AX4GANGS table
    # If values of FROM and TO are the same then ignore!
    # If values of FROM and TO are different INSERT 'To Names' to AX4GANGS table.
    # Delete values of FROM, from AX4GANGS table
    #
    # Jonny Carter
    #
    #
    
    BEGIN
    {
    	( $SCRIPTNAME=$0 )=~s/^.*\\//g;
    	$SCRIPTNAME=~s/^.*\\//g;
    
    	#get the pm libfiles
    	push( @INC, "../pm" );
    }
    
    use CGI;
    use DBI;
    use DBNAME;
    use LOG;
    use Time::Local;
    
    $dbh=DBI->connect("dbi:mysql:host=$DB_host:dbname=$database",$DB_user,$DB_pass)
    	or die "could not conect to database $database";
    
    %allaudited=( getsqllist( "select distinct AUDITED, '1' from AX4GANGS " ) );
    $n=keys(%allaudited);
    
    
    open FILE, "ax4audit.csv" or die  $!;
    
    while( $line=<FILE> )
    {
    	chomp $line;
      ($count,$company,$from,$to) = split( ',', $line );
         
      # AX4GANGS INSERTS and DELETES
      
    
      	( $from eq $to ) && next;
    	
    	if ( ! $allaudited{$to} )
    	{
    		print "INSERT INTO AX4GANGS VALUES (NULL,'$company','$to',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'jonnyc',NULL);\n";
    		$allaudited{$to}="1";
    		
    	}
    	print "DELETE from AX4GANGS where AUDITED='$from';\n";
    	
    
      # AUDITS Table UPDATES
    	
    	print "UPDATE AUDITS set AUDITED ='$to' where AUDITED='$from';\n";
    }
    
    close ( FILE );
    exit;

    Heres an example of what is happening:

    I have a value of JONny Carter and a value of Jonny Carter.

    for some reason when I then run the sql file I get both inserted into the table.

    I hope I have explained this well enough ... Any help is really appreciated.
  • minimatrix
    New Member
    • Nov 2008
    • 5

    #2
    Ah I sorted it now !! but thanks any way!

    It was my error, I put JONny into my .csv file in the 'To' column ...All is working fine now!

    Comment

    Working...