Monday, January 16, 2012

是什么让一个数据库关系?

有一个被通过互联网传播诽谤。它是如此根深蒂固,许多聪明的人认为他们明白。它非常有意义。这是合乎逻辑。这是可以理解的。但是它错了,错,错。

让我解释一下...

早在1960年的电脑体积巨大,嘈杂,也非常非常昂贵。信息保存在更或多或少地和随机访问的计划,是手工编码来获取和数据发送到正确的地方。这是一个喜欢写作的所有朋友的名字连同他们的电话号码的一张纸上随机不大。你怎么知道哪个电话号码属于哪个朋友?早在创业初期,程序员必须知道哪个项目时,与该属于他们写的程序,从而使该系统的数据输出。在系统本身,那是相当多的地方都多。一个客户的电话号码必须与客户的由程序员,每次使用的时间信息的名称。

然后,在1970年,与他一起来到泰德科德开创性论文:“数据的关系模型的大型共享数据银行”(http://www.acm.org/classics/nov95/toc.html)。

郑维健博士科德出生于多塞特,英格兰1923年,是在牛津大学接受教育和在战争期间,英国皇家空军飞行。 1949年他加入了美国的IBM,成为IBM院士在1976年和1981年的图灵奖,荣誉最高的行业可能提出的。然而,很少人了解他的'关系模型'。

大多数人都知道关系数据库表中存储信息。这就像我们每天使用普通表 - 电话等体育书籍,电视节目表,列车时刻表,排名表

很多人认为是关系数据库,如果它可以让你在一个表中的信息涉及到匹配的另一份资料。

考虑一阶系统。客户在一个表,连同他们的联系方式,信用额度与第一列是客户编号,电话号码等有关的命令是在另一个表中,这样您能与客户到该客户的订单,在另一举行表。许多人认为这就是所谓的'关系'。其实,在结构化查询语言(SQL),这是用来操纵关系数据库,它叫做'加入'。

泰德科德表明,该表是关系。他说的是,如果你把一个表中的所有这些数据,你可以看到一个数据块(客户名称)涉及的所有其他人(客户电话号码),而不需要程序的时候。

像我们日常使用的普通表 - 电话等体育书籍,电视节目表,列车时刻表,排名表

很多人认为是关系数据库,如果它可以让你在一个表中的信息涉及到匹配的另一份资料。

考虑一阶系统。客户在一个表,连同他们的联系方式,信用额度与第一列是客户编号,电话号码等有关的命令是在另一个表中,这样您能与客户到该客户的订单,在另一举行表。许多人认为这就是所谓的'关系'。其实,在结构化查询语言(SQL),这是用来操纵关系数据库,它叫做'加入'。

泰德科德表明,该表是关系。他说的是,如果你把一个表中的所有这些数据,你可以看到一个数据块(客户名称)涉及的所有其他人(客户电话号码),而不需要程序的时候。

(实际上,他说的是这样的:

“这个词用在这里的关系在其接受的数学意义。鉴于套中一,中一,· · ·,锡,(不一定是不同的),R是对这些氮与集如果它是一个n -元组各一套已经从S1,它从S1的第二个元素,所以它的第一要素。“

但他是一个数学家和一个天才,我两者都不是。)

用一个表,例如电话簿,您可以阅读的一列名字,你知道在下一栏号码有关的名称,你刚才读,而不是其他一些不同的网页名。在任何(垂直)列中的所有信息是相同的类型(名称或电话号码,但不能同时)。在每一行,所有相关的信息(电话号码属于在'名'列名,而不是其它别的地方的名称)。

因此,一个关系数据库存储在表中的数据。它就是这么简单。这些表格可能会或可能不会加入到其他表的复杂查询,但如果他们不这样做,它不会停止它被关联。

1985年,泰德科德定义了关系数据库,在所有12个,但其中只有一个规则:在传球,对加入表会谈(第7高级别插入,更新和删除)。有些规则仍然不支持现今的关系数据库。泰德科德于2003年去世,但技术还没有赶上他的卓越见解都放弃了。

No comments:

Post a Comment