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]