【发布时间】:2014-01-16 22:08:56
【问题描述】:
我正在 MySQL Workbench 中创建数据库设计。我想要一个包含一些标准值的枚举表。枚举表的值需要链接到我的另一个表中的一行。所以我有一个名为“club”的表,其中包含一行“club_soort”。 “club_soort”行需要与枚举表相关。
另外,我想在 phpMyAdmin 中使用我的表(当我准备好我的数据库设计时)。
我了解枚举的概念,但我无法实现它。我希望有一个人可以帮助我! 谢谢!
【问题讨论】:
我正在 MySQL Workbench 中创建数据库设计。我想要一个包含一些标准值的枚举表。枚举表的值需要链接到我的另一个表中的一行。所以我有一个名为“club”的表,其中包含一行“club_soort”。 “club_soort”行需要与枚举表相关。
另外,我想在 phpMyAdmin 中使用我的表(当我准备好我的数据库设计时)。
我了解枚举的概念,但我无法实现它。我希望有一个人可以帮助我! 谢谢!
【问题讨论】:
您应该使用所谓的查找表或引用表,而不是使用枚举。此表将包含您的枚举,并被父表作为外键引用。
例如,这看起来像:
父表 - - - - - - 俱乐部 ID - - club_soort ----------> soort【讨论】:
ENUM 值不能链接到任何 MySQL 结构。它只能包含静态数据。
【讨论】:
你说的是primary keys吗?
作为关系型数据库,mysql 使用primary keys 和indexes 以您想要的方式连接数据。
主键以有效的方式连接表,PK 在源表或父表中,FPK,在相关表中的外主键。
创建表时,在mysql workbench 或phpmyadmin 中定义一个primary key,每个表只定义一个,如果需要索引,如果需要外键。
使用union 语句连接两个或多个表。
始终使用数字键 data_type INT 而不是自然的字符串键。然后再制作autoincrement 和Not Null。
mysqlworkbench 有一个导出工具,它允许您导出每个创建的表,包括它们的键、索引和级联。您可以复制粘贴在 phpmyadmin 中创建表格。
【讨论】: