| Oracle FAQ | Your Portal to the Oracle Knowledge Grid | |
Home -> Community -> Usenet -> comp.databases.theory -> Re: cdt glossary TABLE
dawn wrote:
> mAsterdam wrote:
> <snip old def>
>
>>After some editing (reaping :-) of the thread >>(most notably Jan's contributions), >>I now propose this: >> >>------------------------------- >>[Table/Row/Column] (SQL-DBMS) >> >>C Date and H Darwen in The Third Manifesto, 1st ed, p135, footnote: >>"/Relation/ has a precise (and somewhat abstract) definition; >> /table/ by contrast, does not." (italics original) >> >>Nevertheless people (and DBMS's, and SQL) *do* use the >>words as if they were. Here is what we've come to expect >>what people mean when they use these words. >> >>Down's law: "People understand tables just fine."
Downs' law. I'll try to remember.
>>A *table* consists of a table header and a body.
> Can we change to "consists of an optional table header and a body"?
> Tables in web pages or spreadsheets might have a table header and might
> not. We could define an SQL TABLE as something more precise, but it
> would be good to define "table" as commonly used if we can.
"[Table]" (unqualified) is in the ToDo part of 0.0.5
The heading is (unchanged from 0.0.4):
"[Table/Row/Column] (SQL-DBMS)"
If there would also be a [Table] entry without qualification the implied context would stand out some more. I'll try reaping some of your text for that below.
>>The *table header* consists of a list(1) of column names
>>that contains >>each column name at most once
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Same here, see below.
> the table header as column headers in that representation. The digital
> media industry could define a video to be a file in mpeg3 format that
> includes credits, but that would be silly since the rest of the world
> knows what a video is and it need not conform to mpeg3 format and it
> need not have credits at all.
>
>
>>and associates with each column name in >>that list a certain type. The *body* is a bag(2) of rows where a *row* >>is a list(1) of values that conforms to the table header.
> Tables in Excel or HTML can have two columns in one row and four in the
> next, but I'm OK with leaving such possibilities out of the definition.
> There are definitely tables without values in some cells, however. And
> this isn't a "nulls" discussion, just an indication that a table,
> unlike a relation, need not have a value in every cell.
>
>
>>(1) The column names and the values are ordered.
>>(2) The rows are unordered; duplicates
>> are allowed. It is not a mixed bag, though:
>> all rows conform to the header.
>>
>>Note that a representation of a table in memory or on paper
>>will (almost always) introduce an order on the elements.
>>This is similar to how denotations of a set such as
>>{a, b, c} and {c, b, a} also introduce each a different
>>order on the elements of the set.
>>In the first denotation the order is a < b < c,
>>in the second it is c < b < a. This order, however,
>>is merely an aspect of the representation and not a
>>property of the thing that is represented.
>>In other words, the two different denotations actually
>>represent the same thing. For tables this means that the
>>order in memory of the representation of the body is not
>>really part of the body, or, put in another way, if we
>>change that order in the representation then it would
>>still represent the same body.
>>
>>One table may contain data about one entity,
>>about several entities, about one or several
>>relationships or any combination.
In a discussion long time ago a kind of rigid
mapping from entities, attributes and
relationships to tables, columns and
foreign keys was assumed as broadly accepted.
I dont' remember exactly when.
This statement challenges the automatism of
such a mapping and IMO implies that design of tables
takes intelligent effort, even when there is an agreed
upon ER-model.
BTW this is from the unchanged (from 0.0.4) part of the proposal.
>>A column can be seen as the attribute of the >>entity/one of the entities/relationships >>about which the table is concerned.
:-)
[snip]
for [Table] I reaped:
It's a start. Received on Thu Jul 14 2005 - 13:17:17 CDT
![]() |
![]() |