I am having trouble updating a row in an access table.
The code below updates the table will the version and update level, however,
I only want to update the row if it exists in the first table?  My code
updates every record in the second table.
Please help?
D:\\cats\catversion.mdb
MMBFILT             5           0

E:\\dbmonro\\catversion.mdb
MMBFOO             1            0

MMBBAR             2            0

MMBFILT             4            0

MMBLAST            1            0

Code:

#!/usr/bin/perl
use Win32::ODBC;

    $DSN = "CATVCD";
    $Dir = "D:\\cats";
    $DBase = "catversion.mdb";
    $Driver = "Microsoft Access Driver (*.mdb)";
    Win32::ODBC::ConfigDSN(ODBC_ADD_SYS_DSN,
                                $Driver,
                                "DSN=$DSN",
                                "Description=Catversion DSN",
                                "DBQ=$Dir\\$DBase",
                                "DEFAULTDIR=$Dir",
                                "UID=" );
          $db = new Win32::ODBC( "CATVCD" );

    $DSN = "CATVBOX";
    $Dir = "e:\\dbmonro";
    $DBase = "catversion.mdb";
    $Driver = "Microsoft Access Driver (*.mdb)";

        Win32::ODBC::ConfigDSN(ODBC_ADD_SYS_DSN,
                                $Driver,
                                "DSN=$DSN",
                                "Description=Catversion DSN",
                                "DBQ=$Dir\\$DBase",
                                "DEFAULTDIR=$Dir",
                                "UID=" );
          $db2 = new Win32::ODBC( "CATVBOX" );

          if ( $db->Sql( "SELECT * FROM Catversion" ))
             {
             print "Error" . $db->Error() . "\n";
             } else {
                    while($db->FetchRow() )
                         {
                         my(%Data) = $db->DataHash();
                         $catb =  $Data{CATALOGID};
                         $verb =  $Data{VERSION};
                         $updb =  $Data{UPDATELEVEL};
                         print "$catb $verb $updb \n";

                                 ($db2->Sql("UPDATE Catversion SET VERSION =
$verb, UPDATELEVEL = $updb" ))
                         }
              }



Ned Cunningham
POS Systems Developer
Monro Muffler Brake & Service
200 Holleder Parkway
Rochester, New York 14615
 (585) 647-6400 ext 310
[EMAIL PROTECTED] <mailto:ned.cunningham@;monro.com> 


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to