perl: fetchall_arrayref() question


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting perl: fetchall_arrayref() question
# 1  
Old 09-16-2009
perl: fetchall_arrayref() question

Hi there, I wonder if somebody could help me out, i have a written a DBI perl snippet using fetchall_arrayref() that i want to use to populate a simple standard array with the results of a query



Code:
#!/usr/bin/perl -w
use DBI;

        my $dbh = DBI->connect("DBI:mysql:MYDB","user","password",) or die $DBI::errstr;
        my $sth = $dbh->prepare("SELECT serial FROM admin WHERE type = 'server'") or die $DBI::errstr;
        $sth->execute or die $DBI::errstr;
        my $arrayref = $sth->fetchall_arrayref();
        

 	 foreach (@$arrayref) {
		print "$_\n";
	 }


However, I am getting the following from my print loop
Code:
$ ./dbi-array.pl
ARRAY(0x9820c28)
ARRAY(0x9820c18)
ARRAY(0x9820bc8)
ARRAY(0x9820bb8)
ARRAY(0x9820b68)
ARRAY(0x9820b58)
ARRAY(0x99b5c10)

as opposed to the desired list of values that have populated the array


Im sure this is something to do with the fact that im trying to iterate and print through a reference rather than an actual array.... but how do i get around it, so that i can print the contents of $arrayref ?

any help on this would be greatly appreciated
# 2  
Old 09-16-2009
you need to de-reference the array.

try this


Code:
 	 foreach (@$arrayref) {
		print @{$_} . "\n";
	 }

# 3  
Old 09-16-2009
Or, alternatively:

Code:
foreach (@$arrayref) {
    print $_->[0],"\n";
}

tyler_durden
# 4  
Old 09-17-2009
thanks guys

Just a quick question, is there any way to dereference the whole array to an "@array" form (as opposed to what we're doing here and dereferencing line by line) ??

alternatively of course, maybe there is an alternative to fetchall_arrayref() that fetches all to an array rather than array reference ....maybe something like a fetchall_array ?? (which incidentally doesnt exist Smilie )
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Perl question about

Hello everybody, I am new at the forum and a total newbie when it comes to Unix. I am trying to see how I can add the ability to kill a user's processes? I want to add this to my Shel Script Add the code/process into a subroutine. Also, I would like to use an array to store the list... (0 Replies)
Discussion started by: kinelisch
0 Replies

2. Shell Programming and Scripting

PERL Question ...

I am reading a file in perl script .. during the debug the $linein value is : linein : +ASM1,sys,|| |3qo;ט|| from this line I am getting the tmepuser and password from above : ($tmpuser, $pwd) = ($linein =~ /^$server\s*,\s*(+)\s*,\|\|(.+)\|\|/sm); I am getting $tmpuser and... (2 Replies)
Discussion started by: talashil
2 Replies

3. Shell Programming and Scripting

another perl question

I have a question regarding bulding a hash from a file which has below pattern I thought I could write something like this but clearly my syntax is way off $/ = "\n\n"; $" = "\n"; open(FILE, file1) || die; my %keymaster = ( ); while (<FILE>) { my $topinfo =~... (5 Replies)
Discussion started by: hankooknara
5 Replies

4. Shell Programming and Scripting

another perl question

I fail to see how below answer is 1? can someone explain this for me? DB<3> $string = "The cat sat on the mat"; DB<4> $animal = ($string =~ m/The (.*) sat/); DB<5> print $animal; 1 (2 Replies)
Discussion started by: hankooknara
2 Replies

5. Shell Programming and Scripting

Perl question regarding [ ]

Below program, I do not get why item I am looking for is , instead of . When I do $#text, i get the right value for $value1, but when I do , i get somsething4, instead of somsethingxxxxxxxxxxxxxxxxxxx(which is what I am looking for. when I do , I get empty.. why? what did I do wrong? can you... (2 Replies)
Discussion started by: hankooknara
2 Replies

6. Shell Programming and Scripting

another perl question

I copy and paste from the book but this thing is not working. I cannot figure out what is wrong with myline 9.. can someone please tell me # cat ./sort4.pl #!/usr/bin/perl -w use strict; use warnings; my $input = shift; my $output = shift; open(IN, '<', $input) or die... (4 Replies)
Discussion started by: hankooknara
4 Replies

7. Shell Programming and Scripting

PERL question

Hello, pkzipc of a certain zip file yeilds the following in shell PKZIP(R) Version 6.0 FAST! Compression Utility for AIX Copyright 1989-2002 PKWARE Inc. All Rights Reserved. Registered Version PKZIP Reg. U.S. Pat. and Tm. Off. Patent No. 5,051,745 Viewing .ZIP: test.zip Length... (13 Replies)
Discussion started by: jerardfjay
13 Replies

8. Shell Programming and Scripting

perl question

If I use 2 system commands in a script, will one finish before the next one starts? or will it start the first and the second at the same time? i.e. system("ps | grep rminer"); system("ls -al | grep 431"); (1 Reply)
Discussion started by: BG_JrAdmin
1 Replies

9. Shell Programming and Scripting

Perl: tk question

When i run my perl/tk script, a perl window pops up behind the GUI window,, can this be hidden???? Also, can the Icon be changed, the Tk icon in every window??? (1 Reply)
Discussion started by: perleo
1 Replies

10. Shell Programming and Scripting

Question about Perl

Where can i find solid information about programming in Perl? Thank you in advance!!!:) (5 Replies)
Discussion started by: SolidSnake
5 Replies
Login or Register to Ask a Question