in reply to Unable to INSERT dereferenced values into db
What version of DBD::mysql are you using? You may be encountering a bug in an older versions of DBD::mysql. The driver looks at the scalars you pass in and tries to determine what type they are, and older versions would occasionally get this wrong. The resulting SQL would leave the value unquoted, which the database then misparses.
As for the question you actually asked, it's irrelevant where the data comes from, as long as you dereference correctly it doesn't matter that your data is contained in an arrayref.
Having said that, your dereferences are slightly wrong. @$ref[0], while it will work here, is akin to saying @array[0]; in some contexts you will not get a result you expect. Consider: $array[0] = `ls` vs. @array[0] = `ls`. See perldoc -q '@array' for a little more discussion.
Your dereferences are better written as $ref->[0], $$ref[0], or even @$ref[0..3].
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: Unable to INSERT dereferenced values into db
by bradcathey (Prior) on May 26, 2004 at 02:18 UTC | |
|
Re: Re: Unable to INSERT dereferenced values into db
by bradcathey (Prior) on May 25, 2004 at 13:42 UTC | |
by Somni (Friar) on May 26, 2004 at 01:55 UTC | |
|
Re: Re: Unable to INSERT dereferenced values into db
by bradcathey (Prior) on May 25, 2004 at 13:51 UTC |