2011-11-02 81 views
0

我在Perl中編寫代碼,我在這裏有一些小問題。用Perl(DBI)引用列(MySQL)

我必須參考列我不知道的名稱,但我知道有多少我會回來。

我正在尋找像bind_columns這樣的功能,但它使用數組進行操作。

例如,@Arr[0]含有正在被如何填充@arr 1.

+4

咦? '@array = $ sth-> fetchrow_array();'現在你擁有該行中的所有列,在一個數組中。 –

+1

你可以使用'fetchrow_array','fetchrow_arrayref'或'fetchrow_hashref'中的任何一個,或者你可以使用帶有特定變量名的'bind_columns'(參見http://blog.bluefeet.net/2011/08/using-dbi -effectively-bind_columns /這是一個簡單的例子)。除非你的查詢的形式是'select * from table',那麼你就知道你選擇了多少列。 – 2011-11-02 16:45:28

+0

@Brian Roach:那就是解決方案。發佈它作爲一個答案(而不是評論),你有我的upvote。 –

回答

2

查找從列中的數據。看起來你喜歡的東西得到它:

@Arr = $sth->fetchrow(); #=> ['bar','baz'] 

也許會更適合來獲得:

$row = $sth->fetchrow_hashref(); #=> {'name'=>'bar','title'=>'baz'} 
$$row{'name'}; #=> 'bar' 
+0

謝謝,我弄明白了 –