0

我有一个赛马数据库,其中包含 2010 年平季所有障碍赛的结果。电子表格现在太大了,我想将其转换为 MySQL 数据库。我查看了许多关于规范化数据和数据库结构的网站,但我无法弄清楚什么去哪里,什么是主键、外键等我在电子表格中有超过 30000 行。列标题是:-

RACE_NO,DATE,COURSE,R_TIME,AGE,FURS,CLASS,PRIZE,RAN,Go,BHB,WA,AA,POS,DRW,BTN,HORSE,WGT,SP,TBTN,PPL,LGTHS,BHB,BHBADJ,BEYER

大部分列是明显的,下面解释不太明显的 BHB 是种族等级,WA 和 AA 是年龄和体重的重量津贴,TBTN 是总距离,PPL 是磅/长度,最后 4 是评级。

通过将电子表格保存为逗号分隔文件,我设法将其作为平面文件导出到 MySQL,但我需要使用正确的 KEYS 将数据结构化为标准化状态。

我会很感激任何建议

很多谢恩克斯

戴维 H

4

3 回答 3

0

这是一个复杂的问题,如果不了解您的系统,很难给您一个准确的答案,但我可以尝试为您提供关系数据库管理系统 (RDBMS) 结构的高级概述.

主键是特定记录的一些标识符 - 通常它对于该记录是唯一的。在这种情况下,您的 RACE_NO 列可能是合适的主键。这样,您可以通过其唯一编号识别每场比赛。

外键是描述数据库中其他对象/表之间关系的数字。例如,您可能想要创建一个列出所有不同种族类别的表格。该表中的每条记录都有一个主键,对该类是唯一的。如果你想在你的“races”表中指出每场比赛是哪个班级,你可能有一个名为 class_id 的记录列。该列的值将使用“类”表中的主键填充。然后,您可以使用连接操作将所有信息集中到一个视图中。

有关数据结构和 mysql 的更多信息,我建议 W3C 关于 SQL 的教程:http: //www.w3schools.com/sql/sql_intro.asp

于 2010-11-17T21:26:22.863 回答
0

首先,您需要定义数据:您必须将每一列放入 MySQL 已知的值空间中。

于 2010-11-17T21:27:16.100 回答
0

过去要做到这一点,我已经分几个步骤完成了......

  1. 将 Excel 电子表格导入 Microsoft Access
  2. 使用MySQL Workbench(以前的 MySQL GUI Tools + MySQL Migration Toolkit)将 Microsoft Access 数据库导入 MySQL

它有点脱节,但它通常工作得很好,从长远来看可以节省我的时间。

于 2010-11-17T21:21:34.173 回答