http://qs321.pair.com?node_id=504213


in reply to Re^2: uninitialized value in join or string
in thread uninitialized value in join or string

You could always map over the array and set the undef values to '', I would personally suggest keeping the database pristine. I would use nulls if it increases data clarity for a more ugly solution in the perl base. '' would violate a unique constraint where as multiple nulls woulden't for instance. Nulls are also open to the database implimentation, and can be optimized away very easily, an empty string however is kept as just as that, rather than a small pointer to null.

Update:
or a simple join ",", grep defined, @row;


Evan Carroll
www.EvanCarroll.com

Replies are listed 'Best First'.
Re^4: uninitialized value in join or string
by Win (Novice) on Oct 31, 2005 at 14:40 UTC
    How could I substitute all the NULL values in an array and replace them with ' ' characters?
      @values = map { defined $_ ? $_ : '' } @values;
      Update: don't use map for transforming something into itself. If you're getting from a different source, though, this would be an appropriate technique.

      Caution: Contents may have been coded under pressure.
        This looks great. However, I would be very pleased if somebody could describe it in English. ;>