Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re^6: Inserting, update and deleteting a database under conditions

by Nik
on Jan 15, 2008 at 16:00 UTC ( #662492=note: print w/replies, xml ) Need Help??


in reply to Re^5: Inserting, update and deleteting a database under conditions
in thread Inserting, update and deleteting a database under conditions

Well i frgoto 'my'. Except that when iam trying to print @dbfiles it display to me the numder 28, so i guess my statement concernign @dbfiles is also wrong. I was trying to get the data from columns title and body.

how can i write that properly and what logical error do you see?

  • Comment on Re^6: Inserting, update and deleteting a database under conditions

Replies are listed 'Best First'.
Re^7: Inserting, update and deleteting a database under conditions
by apl (Monsignor) on Jan 15, 2008 at 16:14 UTC
    How does $db get initialized? When you do the INSERT, what values should be in place of the question marks you specified?
      Like this:
      #===================================================================== +========== my $db = ( $ENV{'SERVER_NAME'} !~ /varsa/ ) ? DBI->connect('DBI:mysql:orthodox;localhost', 'root', '******' +, {RaiseError=>1}) : DBI->connect('DBI:mysql:skieros_orthodox;www.freegreece.net', + 'skieros_root', '******', {RaiseError=>1}); #===================================================================== +========== my @files = glob "$ENV{'DOCUMENT_ROOT'}/data/text/*.txt"; my @filenames = map {/([^\/]+)\.txt$/} @files; my @dbfiles = $db->do( 'SELECT title, body FROM articles' ); foreach my $filename (@filenames) { unless( grep /^\Q$filename\E$/, @dbfiles ) { open FILE, "<$filename" or die "Cannot open $filename: $!"; my $data = <FILE>; close FILE; unless( grep /^\Q$data\E$/, @dbfiles ) { $db->do('INSERT INTO test (title, body) VALUES (?, ?)', undef +, $filename, $data) } } }
      The content of @dbfiles isnt what i think it is though. What i wanted to return is all table's articles contents.
        1. @dbfiles doesn't contain what I thought
        2. @dbfiles is filled using $dbh->do
        3. I wonder what the return value of $dbh->do is?
        4. I wonder if the DBI documentation mentions the return value of the do method?
        OK, that should tell you why your code returns what it does. To get your code to do what you want, I'd recommend consulting DBI recipes.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://662492]
help
Chatterbox?
[thezip]: Efficient, that one.
[erix]: my dog could do the classic mouse jump (never caught a mouse :)
[erix]: he caught a hare once (must have been a young one...)
virtualsue uses arcane git commands to resurrect a file, gets it back into shape and quits for the day
[GotToBTru]: a few years ago, when we had 3 dogs, the largest of them caught a chipmunk, but did not know what to do with it other than hold it in his mouth
[GotToBTru]: my wife told him to spit it out, so he did
[erix]: yeah, modern dogs are cute tjhat way :)
[erix]: except of course, the RHODESIAN LION HOUND ! :)
[Discipulus]: in roma cars are good mouser.. fortunnately no mouse at 7th floor..

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (15)
As of 2017-11-17 20:01 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    In order to be able to say "I know Perl", you must have:













    Results (272 votes). Check out past polls.

    Notices?