rather than inserting a fictitious value which would then doom me to never again being able to say WHERE salary... without adding a AND not salary_value_is_fictitiousYou do not need a "salary_value_is_fictitious" field but a field which says why you cannot use the "salary" field. It is exactly my argument that "NULL" is ambiguous in that respect. If your database model somehow allows for the salary field to be nonsense (perhaps because the database includes unsalaried people) then your model must somehow cater for it and allowing "NULL" is by far the worst way to do so, as by its very essence it cannot contain any meaning in and by itself: it is --in a way-- the very absence of meaning.
Even if you do have something to ship, I should be able to enter as much of the address as I know at the moment, email the recipient to get his ZIP code, wait a day or two for him to reply, and then have the package ship as soon as I get his email and enter the ZIP code. Allowing the user to proceed without entering all relevant data is not necessarily doing it wrong.
In that case, just enter nothing in the ZIP-code field and by nothing I mean the "empty string" which is different from NULL (which is more like "undef").
CountZero
A program should be light and agile, its subroutines connected like a string of pearls. The spirit and intent of the program should be retained throughout. There should be neither too little or too much, neither needless loops nor useless variables, neither lack of structure nor overwhelming rigidity." - The Tao of Programming, 4.1 - Geoffrey James
In reply to Re^7: DBI: passing undef as an argument
by CountZero
in thread DBI: passing undef as an argument
by fws
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |