2000。06。10 1 3 12 23 29 33 27
2000。06。14 2 4 13 19 39 45 26
2000。06。17 3 8 17 19 21 25 35
The data is arranged as a table; and thus could be easily converted into a relational data
base table。 In relational database…speak; each row in the file corresponds to a row of data。 But
to create a row of data; you need fields; each of which is also in a column。 A relational database
table is a grid of rows and columns。 When working with a relational database; you don’t
manipulate columns; you manipulate individual rows。
What distinguishes a relational database is that you can bine tables and create more
plicated data structures。 It is the relationships (called relations) between pieces of data
that make a relational database so powerful。 For the lottery data; a relation could be who won
the jackpot on the draw dates。 Modifying the table to include the person who won would look
this:
2000。05。31 nobody 5 6 13 23 25 37 43
2000。06。03 nobody 7 10 11 18 32 41 5
2000。06。07 nobody 15 23 24 28 38 39 45
2000。06。10 jack 1 3 12 23 29 33 27
2000。06。14 nobody 2 4 13 19 39 45 26
2000。06。17 nobody 3 8 17 19 21 25 35
For the most part; no one won the jackpot。 But on June 10; 2000 (2000。06。10); a person
named Jack won the jackpot。 You might know a Jack。 I might know a Jack。 But would he be the
same Jack? Probably not。 So to distinguish winner Jack from another Jack; you would need his
full name; address; and other details。 But where do you put this extra information?
Do you put the information about Jack into the lottery data table? Or do you create another
table? The answer is that you create another table。 But since you are working with files; it will
be a file; not a table。 The file will be called jack。txt because the winner of the lottery jackpot
was Jack。 The jack。txt file could contain the following information。
Jack Smith
Address
City
Country
The information in jack。txt and the information in the lottery data file have a relation。 The
relation is the winner of the jackpot。 This is what a relational database is all about。 The reason you
use a relational database and not files that cross…reference each other is because a relational
database is extremely efficient at managing tables and relations。 The techniques demonstrated
in Chapter 10 are nowhere near as efficient and effective as using a relational database。
Relational databases are quite capable of handling terabytes of data。 Additionally; relational
databases are capable of building efficient relations that span terabytes of data。
…………………………………………………………Page 395……………………………………………………………
C HA P TE R 1 4 ■ L E AR N I N G AB O U T R E L AT IO N A L D AT AB A SE D A TA 373
Database Relations
Relations are very powerful; but they can also make things extremely plicated。 When you
split tables and create relations between the tables; you are normalizing the data。 Database
normalization is defined as follows (http://en。wikipedia。org/wiki/Database_normalization):
Database normalization is a technique for designing relational database tables to
minimize duplication of information and; in so doing; to safeguard the database
against certain types of logical or structural problems; namely data anomalies。 For
example; when multiple instances of a given piece of information occur in a table; the
possibility exists that these instances will not be kept consistent when the data within
the table is updated; leading to a loss of data integrity。 A table that is sufficiently
normalized is less vulnerable to problems of this kind; because its structure reflects the
basic assumptions for when multiple instances of the same information should be
represented by a single instance only。
For example; the data on the winner and the data on the lottery ticket are kept in separate
tables; making the overall data structure more efficient from a maintenance and performance
point of view。
Creating relations between tables is a form of referencing; where one table says informa
tion here references information in another table。 The referencing is carried out using columns
of one table that are cross…referenced with columns of another table。
The lottery ticket example is interesting because of the relations between the lottery draws
and the winners; which could be of two types:
o One draw to many winners: When a lottery ticket is drawn; there can be many winners。
o One winner to many draws: Even though it is improbable; one winner could win
multiple draws。
In the file example; you saw the one…winner…to…many…draws relation。 You probably did
not think it was that type of relation; and more likely thought it was a one…draw…to…one…winner
relation。 But consider the following text file; where jack is referenced twice。
2000。05。31 nobody 5 6 13 23 25 37 43
2000。06。03 jack 7 10 11 18 32 41 5
2000。06。07 nobody 15 23 24 28 38 39 45
2000。06。10 jack 1 3 12 23 29 33 27
2000。06。14 nobody 2 4 13 19 39 45 26
2000。06。17 nobody 3 8 17 19 21 25 35
The table of draws has the ability to reference the same winner twice; which means the
relation of one winner to many draws is possible。 To add the relation of one draw to many
winners; the table would need to be modified like this:
2000。05。31 nobody 5 6 13 23 25 37 43
2000。06。
小说推荐
- oracle从入门到精通(PDF格式)
- -Page 1-Oracle 从入门到精通-Page 2-资源来自网络,仅供学习 Oracle 从入门到精通一、SQL 8
- 最新章:第37章
- C语言游戏编程从入门到精通(PDF格式)
- -Page 1-Page 2-Page 3-Page 4-Page 5-Page 6-Page 7-Page 8-Page 9-Page 10-Page 11-Page 12-Page 13-Page 14
- 最新章:第4章
- Java编程思想第4版[中文版](PDF格式)
- -Page 1-Page 2《Thinking In Java》中文版作者:Bruce Eckel主页:http/BruceEckel.编译:Trans Bot主页:http/memberease~transbot致谢-献给那些直到现在仍在孜孜不倦创造下一代计算机语言的人们!指导您利用万维网的语言进
- 最新章:第295章
- 深入浅出MFC第2版(PDF格式)
- -Page 1-Page 2-山高月小山高月小 水落石出水落石出山高月小山高月小 水落石出水落石出-Page 3-深入淺出MFC(第版 使用Visual C 5.0 MFC 4.2)Dissecting MFC(Second Edition Using Visual C 5.0 MFC 4.2)侯俊
- 最新章:第309章
- VC语言6.0程序设计从入门到精通
- -Page 1-Visual C 6.0 程序设计从入门到精通求是科技 王正军 编著
- 最新章:第136章
- SQL 21日自学通(V3.0)(PDF格式)
- -Page 1-SQL 21 日自学通(V1.0 翻译人 笨猪目录目录 1译者的话 14第一周概貌 16从这里开始 16
- 最新章:第170章
- 2008年青年文摘精编版
- 作者:中国青年出版社“初恋”的惩罚.作者:凡 凡 文章来源《真情》2005年第4期 点击数:6608 更新时间:2005-6-5过了年,我就十八岁了。离高考只剩下四个多月了。这一段,班里的男女生相互间递纸条、写情书、约会等地下活动慢慢的多了起来。我这个“尖子生”也突然感到了不安、慌乱,并且自责。不知
- 最新章:第230章
- JMS简明教程(PDF格式)
- -Page 1-JMS1.1规范中文版卫建军2007‐11‐22-Page 2
- 最新章:第28章
- SQL语言艺术(PDF格式)
- -Page 1-SQLSSQQLL语言艺术内容介绍本书分为12章,每一章包含许多原则或准则,并通过举例的方式对原则进行解释说明。这些例子大多来自于实际案例,对九种SQL经典查询场景以及其性能影响讨论,非常便于实践,为你数据库应用维护人员阅读。资深 SQL 专家 Stéphane Faroult倾力打
- 最新章:第27章