我有一个赛马数据库,该赛事数据库包含了2010年平季的所有残疾人比赛结果。电子表格现在已经太大了,我想将它转换为MySQL数据库。我已经查看了很多关于规范化数据和数据库结构的网站,但我无法弄清楚究竟是什么,以及什么是PRIMARY KEYS,FOREIGN KEYS ETC我在电子表格中有超过30000行。列标题是: -
RACE_NO,DATE,当然,R_TIME,AGE,毛皮,CLASS,奖品RAN,围棋,BHB,WA,AA,POS,DRW,BTN,马,WGT,SP,TBTN,PPL,LGTHS,BHB,BHBADJ是,Beyer
大部分栏目都很明显,下面解释了不太明显的BHB是种族,WA和AA是年龄和体重的重量限制,TBTN是总打距,PPL是每长度磅数,最后4个是的收视率。
我通过将电子表格保存为逗号分隔文件,设法将其作为平面文件导出到MySQL,但我需要构建 使用适当的KEYS将数据转换为标准化状态。
我很感激任何建议
许多贵族
Davey H
答案 0 :(得分:0)
过去这样做,我已经分几步完成了......
它有点脱节,但它通常效果很好,从长远来看节省了我的时间。
答案 1 :(得分:0)
这是一个涉及到的问题,在不了解您的系统的情况下很难给出一个精确的答案,但我可以尝试为您提供关系数据库管理系统(RDBMS)的高级概述。 )是有条理的。
主键是特定记录的某些标识符 - 通常它对该记录是唯一的。在这种情况下,您的RACE_NO列可能是合适的主键。这样,您可以通过其唯一编号识别每个种族。
外键是描述数据库中其他对象/表之间关系的数字。例如,您可能想要创建一个列出所有不同种族类的表。该表中的每条记录都有一个主键,对该类是唯一的。如果你想在你的“比赛”表中指出每个比赛是哪个类,你可能会为每个名为class_id的记录添加一列。该列的值将使用“classes”表中的主键填充。然后,您可以使用连接操作将所有信息合并到一个视图中。
有关数据结构和mysql的更多信息,我建议使用关于SQL的W3C教程:http://www.w3schools.com/sql/sql_intro.asp
答案 2 :(得分:0)
在其他任何事情之前,您需要定义您的数据:您必须使每个列适合MySQL已知的值空间。