Database design often involves decisions about the storage of attributes. For example a Social Security Number can be stored as a one attribute or split into three attributes (one for each of the three hyphen-deliniated groups of numbers in a Social Security Number—XXX-XX-XXXX). However, Social Security Number is usually stored in one attribute. The decision is usually based on how the database will be used. This exercise asks you to think about specific situations where dividing the SSN is useful.

What will be an ideal response?

a. We need the area code (also know as city code in some countries) and perhaps the country code (for dialing international phone numbers).
b. I would recommend storing the numbers in a separate attribute as they have their own independent existence. For example, if an area code region were split into two regions, it would change the area code associated with certain numbers, and having area code in a separate attribute will make it is easier to update the area code attribute by itself.
c. I would recommend splitting first name, middle name, and last name into different attributes as it is likely that the names may be sorted and/or retrieved by the last name, etc.
d. In general, if the each attribute has an independent logical existence based on the application, it would make sense to store it in a separate column otherwise there is no clear advantage. For example, SSN need not be split into its component unless we are using the subsequences to make deductions about validity, geography, etc. In the two cases above, it made logical and business sense to split the attributes.

Computer Science & Information Technology

You might also like to view...

Which of the following punch down blocks is BEST suited for highspeed data transmission?

A. 66 block B. Crossconnect block C. 110 block D. 25 pair cable block

Computer Science & Information Technology

What elements are in the array newArray after the following code is executed?

``` Dim firstArray() As Integer = {1, 2, 3} Dim secondArray() As Integer = {3, 4, 5, 6} Dim newArray() As Integer = firstArray.Union(secondArray).ToArray ``` (A) 1, 2, 3, 3, 4, 5, 6 (B) 1, 2, 3, 4, 5, 6 (C) 3 (D) 1, 2

Computer Science & Information Technology