in reply to Re: DB Help Request
in thread DB Not UPDATE-ing

no .. sorry really tired.

--
paul

Replies are listed 'Best First'.
Re: DB Help Request
by jonadab (Parson) on Sep 14, 2003 at 17:25 UTC

    Try adding a SELECT, to see whether the WHERE clause is matching the records at all...

    my $SELECT = "SELECT * FROM mytable WHERE usercode=? AND unsubscribe +dby = ''"; my $UPDATE = "UPDATE mytable SET subscribed = '0', unsubscribedby = +'SYSTEM' WHERE usercode=? AND unsubscribedby = ''"; for (@usercodelist) { my $sth = $DBH->prepare($SELECT); my $q = $sth->execute($_); while (my $r = $q->fetchrow_hashref()) { print "Matched $$_{usercode}\n"; } $sth = $DBH->prepare($UPDATE); $sth->execute($_) or die "<div>Could not execute SQL statement ... maybe invalid?</d +iv><div>$!</div>"; $sth->finish(); }

    If you don't get any "Matched" lines, then the WHERE clause is the problem. If all the correct records get "Matched" lines, then the WHERE clause is not the problem.


    $;=sub{$/};@;=map{my($a,$b)=($_,$;);$;=sub{$a.$b->()}} split//,".rekcah lreP rehtona tsuJ";$\=$ ;->();print$/