|
> From: Raul A. Jager W. > > We realy are dealing with math here, and there are clear rules about > operations. I will not argue if the rules are correct or if they make > sense. Just as 2 + 2 = 4 wether you like it or not, the nulls have > their rules. NULLs are not math in the sense that they follow some established rules of mathematics. They are simply a convention made up by people who chose to agree on how they would work, and they may or may not work for someone else. The closest thing you will find is the concept of an "undefined value" in a function (such as the result of one divide by zero), but even that doesn't apply to an alpha field. Nowadays programmers have a bad tendency to take whatever anybody tells them as "rules" or "laws" when they are simply conventions. As I explained, the conventions for how NULLs work are not necessarily correct for every business situation. > Nulls are an excelent way to deal with some bussiness rules, it is up to > us, IT people to decide when to use nulls and when to use something else. > SQL must implement the nulls in the way the matematicians defined they > must behave. If you need some other behavior, don't use nulls. As far as I know, there were no professional mathematicians involved in the design of NULL. Just a bunch of IT guys sitting around trying to figure out what to do. They may have taken a course in math at one point and applied their knowledge to the question, but the idea that NULL means "undefined" is simply a convention. In fact, in modern database theory there are at least three different meanings of NULL: the attribute exists but is currently unknown, the attribute does not exist or is inapplicable, or we don't know whether the attribute is applicable. (Example: Employer's Name. Unknown: the person is employed, but we don't know where. Inapplicable: The person is not employed. Neither: We don't know whether they're employed or not.) My problem with NULLs is not how they are implemented, but that they are simply not flexible enough. A numeric null should have the ability to be treated as a zero or indeed as any number I choose. The same with an alpha field; I should be able to easily cause all NULL values to act how *I* want them to act, not how somebody else thinks they should act. Joe
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.