Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change

Re: Null fields

by busunsl (Vicar)
on Mar 27, 2001 at 19:46 UTC ( #67517=note: print w/replies, xml ) Need Help??

in reply to Null fields

You get your values from a fetch.
Fetch returns undef for NULL values.

Replies are listed 'Best First'.
Re: Re: Null fields
by Tyke (Pilgrim) on Mar 27, 2001 at 19:59 UTC
    And how are null fields held in a CVS file? Just curious.

      Hmm, yes,

      my $csv_data = "foo,,bar"; foreach ( split /,/, $csv_data ) { print "'$_' => ", defined($_), "\n"; }

      Gives you

      'foo' => 1
      '' => 1
      'bar' => 1

      So that middle value is not undef, but "". Of course, since DBI's results are supposed to be as independent as possible of the underlying data structure, there may -- in fact, should -- be routines within DBD::CSV to convert "" to undef, which is what you'd expect to get if you were using an actual RDBMS. That's assuming it even uses something so crude as that split to get at the data =)

      /me is too lazy to look at the source code.
        Ah, but I always understood that '' was not the same as null, at least for strings. After all '' ne undef in Perl.

        On the other hand, I also believe that this distinction is database dependent :-(

        Update: As merlyn rightly points out, '' eq undef is true. I goofed.

      They are held as nothing between the commas, like this:
      12,"bla bla",,137

      The third is a NULL.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://67517]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (5)
As of 2018-10-17 23:27 GMT
Find Nodes?
    Voting Booth?
    When I need money for a bigger acquisition, I usually ...

    Results (99 votes). Check out past polls.