Click here to monitor SSC
SQLServerCentral is supported by Red Gate Software Ltd.
 
Log in  ::  Register  ::  Not logged in
 
 
 
        
Home       Members    Calendar    Who's On


Add to briefcase «««1112131415»»»

Normalization Expand / Collapse
Author
Message
Posted Thursday, April 28, 2011 2:44 AM


SSCertifiable

SSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiable

Group: General Forum Members
Last Login: Yesterday @ 10:05 AM
Points: 7,056, Visits: 7,279
Steven993 (4/27/2011)
I actually have Date on Database Writings 2000-2006 under my eyes.
Chapter 8, 30 apges is dedicated to that topic.
p127

Definition
A table is normalized - equivalently, it is in first normal form, 1NF- if and only it is a direct and faithful representation of some relation.


Is that an exact quote and that sentence is his only definition of 1NF?

If so then where did

1.There's no top-to-bottom ordering to the rows.
2.There's no left-to-right ordering to the columns.
3.There are no duplicate rows.
4.Every row-and-column intersection contains exactly one value from the applicable domain (and nothing else).
5.All columns are regular [i.e. rows have no hidden components such as row IDs, object IDs, or hidden timestamps].

come from?



Far away is close at hand in the images of elsewhere.

Anon.

Post #1100035
Posted Thursday, April 28, 2011 2:45 AM
SSC Rookie

SSC RookieSSC RookieSSC RookieSSC RookieSSC RookieSSC RookieSSC RookieSSC Rookie

Group: General Forum Members
Last Login: Monday, November 17, 2014 6:03 AM
Points: 30, Visits: 746
David Burrows (4/28/2011)
Steven993 (4/27/2011)
David Burrows (4/27/2011)

Your example shows violation of Codd's 1NF and is what I understood to be 1NF.

My example, you mean AddressLine table ? It's is not a 1NF violation..


No sorry, my bad , I should have been more specific. I was referring to
S#   CITY
1 'London'
2 'Paris'
3 'Paris, Madrid'


I've explained it. What do you don't understand ? I can't explain it better....
To be in 1NF, we must have exactly one value for CITY's domain in tuple 3. THere is one value regarding that domain. That's in 1NF.
Post #1100036
Posted Thursday, April 28, 2011 2:47 AM
SSC Rookie

SSC RookieSSC RookieSSC RookieSSC RookieSSC RookieSSC RookieSSC RookieSSC Rookie

Group: General Forum Members
Last Login: Monday, November 17, 2014 6:03 AM
Points: 30, Visits: 746
David Burrows (4/28/2011)
Steven993 (4/27/2011)
I actually have Date on Database Writings 2000-2006 under my eyes.
Chapter 8, 30 apges is dedicated to that topic.
p127

Definition
A table is normalized - equivalently, it is in first normal form, 1NF- if and only it is a direct and faithful representation of some relation.


Is that an exact quote and that sentence is his only definition of 1NF?

Of course....

David Burrows (4/28/2011)

If so then where did

1.There's no top-to-bottom ordering to the rows.
2.There's no left-to-right ordering to the columns.
3.There are no duplicate rows.
4.Every row-and-column intersection contains exactly one value from the applicable domain (and nothing else).
5.All columns are regular [i.e. rows have no hidden components such as row IDs, object IDs, or hidden timestamps].

come from?

I don't know where GSquared take this from.
But I don't desagree with what is written here... Chris Date has writted things like that. Yes.
But that's NOT 1NF definition !_!

Relation != Table
Post #1100040
Posted Thursday, April 28, 2011 2:50 AM


SSCertifiable

SSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiable

Group: General Forum Members
Last Login: Yesterday @ 10:05 AM
Points: 7,056, Visits: 7,279
Steven993 (4/28/2011)
David Burrows (4/28/2011)
Steven993 (4/27/2011)
David Burrows (4/27/2011)

Your example shows violation of Codd's 1NF and is what I understood to be 1NF.

My example, you mean AddressLine table ? It's is not a 1NF violation..


No sorry, my bad , I should have been more specific. I was referring to
S#   CITY
1 'London'
2 'Paris'
3 'Paris, Madrid'


I've explained it. What do you don't understand ? I can't explain it better....
To be in 1NF, we must have exactly one value for CITY's domain in tuple 3. THere is one value regarding that domain. That's in 1NF.


I do understand, probably my bad references caused the problem here, my apologies



Far away is close at hand in the images of elsewhere.

Anon.

Post #1100042
Posted Thursday, April 28, 2011 2:51 AM


SSCertifiable

SSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiable

Group: General Forum Members
Last Login: Yesterday @ 10:05 AM
Points: 7,056, Visits: 7,279
Steven993 (4/28/2011)
David Burrows (4/28/2011)
Steven993 (4/27/2011)
I actually have Date on Database Writings 2000-2006 under my eyes.
Chapter 8, 30 apges is dedicated to that topic.
p127

Definition
A table is normalized - equivalently, it is in first normal form, 1NF- if and only it is a direct and faithful representation of some relation.


Is that an exact quote and that sentence is his only definition of 1NF?

Of course....

David Burrows (4/28/2011)

If so then where did

1.There's no top-to-bottom ordering to the rows.
2.There's no left-to-right ordering to the columns.
3.There are no duplicate rows.
4.Every row-and-column intersection contains exactly one value from the applicable domain (and nothing else).
5.All columns are regular [i.e. rows have no hidden components such as row IDs, object IDs, or hidden timestamps].

come from?

I don't know where GSquared take this from.
But I don't desagree with what is written here... Chris Date has writted things like that. Yes.
But that's NOT 1NF definition !_!

Relation != Table


Thank you



Far away is close at hand in the images of elsewhere.

Anon.

Post #1100046
Posted Thursday, April 28, 2011 3:10 AM


SSCertifiable

SSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiable

Group: General Forum Members
Last Login: Yesterday @ 5:50 PM
Points: 7,923, Visits: 9,649
David Burrows (4/28/2011)
Steven993 (4/27/2011)
David Burrows (4/27/2011)

Your example shows violation of Codd's 1NF and is what I understood to be 1NF.

My example, you mean AddressLine table ? It's is not a 1NF violation..


No sorry, my bad , I should have been more specific. I was referring to
S#   CITY
1 'London'
2 'Paris'
3 'Paris, Madrid'


Whether it is a violation of 1NF depends on the domain for the CITY attribute. From the name of the attribute, one would expect the domain to be "names of cities" and since 'Paris, Madrid' isn't the name of a city that would imply that there is a violatiopn of 1NF here. If the domain for the CITY attribute is "text containing one or more city names separated by commas" there is technically no violation of 1NF here but it seems to me that the spirit of the definition (though not the letter) is evaded. If the domain for CITY is "any text string" and things like '#Jgf%$£=123^%zoink' can turn up as well as things like the three values shown there is certainly no violation of 1NF (neither the letter nor the spirit is violated) but the attribute naming is seriously stupid.
That's the trouble with 1NF. When Codd talked about a simple value in a domain some took it to mean that domains like "lists of city names" were forbidden; but Codd specifically talked about complex types (although he insisted on a first order algebra - a domain could have members which were relations); and Date took it even further (allowed domains to have relations as members). This has caused an enormous amount of debate over the years, because people often feel that the atomicity principle is rendered meaningless by allowing complex types. But that atomicity principle must not be allowed to contradict the KISS principle! If I want the complex number r(cosθ+isinθ) why should I have to store it as two separate attributes (either modulus and phase or real part and imaginary part) and there is actually only one thing? Why should I have to store rational numbers like 0.3 as two separate attributes (numerator and denominator or significand and exponent)? Should CHAR(2) not be an allowable SQL type just because some atomicity fundamentalist thinks I should represent such attributes as two separate single character attributes?


Tom
Post #1100057
Posted Thursday, April 28, 2011 3:15 AM
SSC Rookie

SSC RookieSSC RookieSSC RookieSSC RookieSSC RookieSSC RookieSSC RookieSSC Rookie

Group: General Forum Members
Last Login: Monday, November 17, 2014 6:03 AM
Points: 30, Visits: 746
Read the entire post. There is domain definition in it.

Of course there was debate about the word "atomicity".

Is the VARHAR(5) string 'Hello' atomic ?
Can we decompose it in 'H', 'e', 'l', 'l', 'o' ?
Yes certainly you can do that if you want. but no, it's in 1NF.
Post #1100059
Posted Thursday, April 28, 2011 3:23 AM


SSCertifiable

SSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiable

Group: General Forum Members
Last Login: Yesterday @ 5:50 PM
Points: 7,923, Visits: 9,649
Steven993 (4/28/2011)
[quote]
I don't know where GSquared take this from.

Well he has told you plainly and clearly, even down to the page number, but you appear to be too lazy to turn the page. As you've just quoted from page 127, try reading from the bottom of that page on to a little way down the next page. You'll then find that you have read the passage quoted. It's right there, where Gus told you it was. Chris is saying (this is a paraphrase, I don't have the book here) "a relation is a table in 1NF; this is what it means for a table to be a relation, ie in 1NF: 1......" which quite plainly makes each of his conditions 1 to 5 part of his definition of 1NF.
So please stop telling us that 1NF has nothing to do with what 1NF is. And stop being too lazy (or is it just too plain arrogant?) to follow up the extremely plain and clear reference you have been given, especially when you already have the book open at the page on which the passage begins.


Tom
Post #1100064
Posted Thursday, April 28, 2011 3:29 AM
SSC Rookie

SSC RookieSSC RookieSSC RookieSSC RookieSSC RookieSSC RookieSSC RookieSSC Rookie

Group: General Forum Members
Last Login: Monday, November 17, 2014 6:03 AM
Points: 30, Visits: 746
So there is no logical difference between Relation and Table ?

What Date is saying is that :

When you read a table. Because of it's 2 dimensional representation, you might think that there a specific order between attributes or between rows in the relation represented by that table.

This is not a 1NF definition..
He just took 1NF definition and created rules from it for tables. So when you read a table, you must remember those simple rules, to understand the relation behind, if you don't know what a relation is.
Post #1100068
Posted Thursday, April 28, 2011 3:38 AM


SSCertifiable

SSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiableSSCertifiable

Group: General Forum Members
Last Login: Yesterday @ 5:50 PM
Points: 7,923, Visits: 9,649
Steven993 (4/28/2011)
Read the entire post. There is domain definition in it.

Of course there was debate about the word "atomicity".

Is the VARHAR(5) string 'Hello' atomic ?
Can we decompose it in 'H', 'e', 'l', 'l', 'o' ?
Yes certainly you can do that if you want. but no, it's in 1NF.

Did I suggest that your original post didn't contain a definition of the domain? No.
Did I suggest that I would support the atomicity fundamentalists? No.
Is there a domain definition in the entire post to which I responded? No.
Did I manage to answer Dave's question without displaying bad temper and worse manners? Yes.

So what's the point of your ill-tempered and ill-mannered response?

Why does everything you post increase my feeling that you are trying (but utterly failing) to emulate Fabian Pascal's style?


Tom
Post #1100071
« Prev Topic | Next Topic »

Add to briefcase «««1112131415»»»

Permissions Expand / Collapse