What is a meaningless number? Meaningless Numbers are Idaho and code columns which uniquely place a record in a database table. They were made up by computing machine programmers, and in traditional programming, they formed the first entry window where you were responsible for remembering that "D" intends Doctor, and "402" is your best customer. Since it would be incorrect to discriminating against an entry window just because it's a missive and not a figure [age of equality] I'll include meaningless missive combo's in this theory also.
The point? Users should not be required to retrieve "402" for General Electric of Bay State and "791" for General Electric Turbine Division", but computer programmers should indeed still do usage of them as the footing of human relationships between database tabular array records. Just don't anticipate the users to come in or retrieve them: the truly meaningless Numbers and codifications can be totally hidden from users and as a study, I will mention to RoloFlex by Applause Software as a good illustration where each tabular array is based on a alone meaningless number.
What is a meaningful number? A meaningful figure is those database records that are referred to commonly by figure such as as polonium #4067, Gross Sales Order #1, and Speed Ticket #352-4635A. These Numbers be on paper and are the primary manner of referring to a record of this type. When you travel to look up my hurrying ticket, you might indeed look it up under my name also, but when a payment is received [good luck] you desire to be able to come in the printed figure 352-4635A and quickly turn up and use payment before my bank check bounces.
Can a meaningful and meaningless figure co-exist? Yes. Numeric meaningless Numbers are the foundation of alone identifiers of each record, and a meaningful figure can co-exist as [both] uniquely indexed [findable] columns in the same information table.
There's a space here while the computer programmers throw their heads.
Let's say you are a database computer programmer and cognize that Numbers rather than a twine which changes in length [throwing off the kind order completely] should be the foundation of the database record [for velocity and human relationship intents only], you can programme your alone (meaningless) Idaho column of hurrying tickets, and also have got a alone (meaningful) column which is ASCII [mixed Numbers and letters] which is used for determination it.
Why not do the cardinal column a automatic increase figure for relation intents alongside a humanly enterable column consisting of alpha-numeric characters? Hands please? How many computer programmers have got written 200 lines of codification to auto-increment "#352-4635A"? The function of the meaningless figure is to acquire auto-incremented in 1 line of code, being totally hidden from the user, and the foundation of the human relationship to it's rear database table. The function of the Speed Ticket figure is to humanly happen a record more easily than 12342345345565.
Table Layout Proposed: -Fines- Column: Element: Type: Length: Index: Relates To: 1 Idaho Numeric 16.0 1 (unique) 2 TicketNo Ascii 20 2 (unique) 3 VIN_ID Numeric 10.0 3 VIN.ID // Not VIN (Ascii Field) 4 SSN_ID Numeric 10.0 4 SSN.ID // Not SSN (Ascii Field)
-VIN- Column: Element: Type: Length: Index: Relates To: 1 Idaho Numeric 10.0 1 (unique) 2 VIN Ascii 20 2 (unique)
-SSN- Column: Element: Type: Length: Index: Relates To: 1 Idaho Numeric 10.0 1 (unique) 2 SSN Ascii 11 2 (unique)
This construction do usage of meaningless Numbers and meaningful Numbers side by side, each fulfilling their job.
Hopefully there is a computer programmer slapping his/her caput here like the V-8 commercial.
The function of a meaningless number: Let's confront it. Meaningless Numbers are here to stay. Everybody's got one, but computer programmers are still stuck on what to make with them. hide THEM! In a relational database model, where the kid is related to it's rear by the ID, the value will automatically drop down to the kid upon a successful save, making show of this figure absolutely unnecessary. I should indicate out that many good scheduling houses are based on "Intelligent Design" such as as Auto-Mate Software of the United States http://www.automatesoftware.com/. Please visit this land site to read about the narrative about "Enter the field matrix number"…. It's a great story.
Let's spell a measure additional and phone call a byte a byte. Whether it's a field matrix figure or a portion number, owed concern necessitates to be set into the designing of a "key field" search to find whether or not it's meaningful or meaningless. On a portion number, why not both? To programmers, here's my argument: why not utilize this technique so that if the portion figure is mis-entered, or changes, you can simply reenter the portion figure without altering the relationship? Lunacy or magnificent? It's your sentiment that counts.
Let's return an illustration in RoloFlex 12.3 from Applause Software (open beginning and freeware). The database tabular arrays all have got a alone Idaho that is 10 figure numeric: Please mention to the running play programme and you will see that none are visible. In addition, I have got coded the cardinal Fields as "noenter" so that if they were made visible, they could not be used! Ten figure Idaho Numbers for everything? Meaningless or Madness?
Hands again? Each computer programmer who have had to increase a user's cardinal Idaho field from 6 to 8 to suit 20 old age of information entry delight base up! I'll wager there are a good many among us. Let's also short letter in passing that days of the month on computing machines are stored as 6 figure integers, and in the western human race we are almost out of Numbers in the six figure length! Why have got we not expanded our days of the month to 8 or 10 digits? I think we'll have got to wait until "Y6K" to happen out!
The designing of meaningless Numbers in action: Let's take on a RDBMS [relational database direction system] illustration and specifically look at parent and kid tabular array design. My first point should be obvious to most programmers, that a parent Idaho field is used to uniquely place the parent but (being meaningless) is not displayed to the user at all. In RoloFlex, delight short letter that the parent database tabular arrays of the chief tabular array have got a alone Idaho which drops down into the chief tabular array upon a save, forming the human relationship without being seen.
Please short letter (when inspecting the interior tabular array def's for RoloFlex tables) that the Key Idaho column have a noenter attribute, meaning that the user cannot alteration or type in a new value to that column should it look on the screen. It is auto-incremented from the system data file "sysfile" and is totally meaningless to even the database interior designer other than being a alone value. No surprises here, but let's look at a kid tabular array to see the same technique:
So, what's the surprise here? On many occasions, I have got noticed the deficiency of a single alone key field on kid records. For example, the kid of order heading would have got a cardinal combination of HeaderID and Linenumber. If I applied the same consideration to the CallHist table, then there would be a jazz band of RolodexID and Call Date as the first index. What [the used] this technique makes is to constitute the footing of a hereafter kid tabular array to CallHist. From the get-go, A strong Idaho field bes to constitute a possible one-to-one column human relationship to a kid of CallHist which may be in the future. The point, then, is to always programme an Idaho column as a alone meaningless figure for every tabular array and index it accordingly. Then, advancement onwards to specifying all the other columns of the database table.
As an other bonus, you will see that "recnum" or record figure is not defined in any of the indexes making a move from any 1 dorsum stop to another manufacturer's back end a relatively easy job.
Whitepaper Summary: I believe I have got got defined the difference between a meaningful figure and a meaningless figure and declared that meaningless Numbers have no topographic point in information entry! On the other hand, the statement for placing a meaningless figure as the foundation of your human human relationships overwhelms the grounds that you might have got got for designing a meaningful figure as the human human human relationship key: It is my contention that an alphanumeric or twine column have no topographic point as the relationship key, and lastly that each tabular array should have an Idaho field for forming the relationship which totally liberates you to change the secondary key column with information entry without compromising the relationships.
Let end users see meaningful Numbers only, but set your foundation on "meaningless design" with [hidden] information architecture!