Mysql php我的管理员一对多关系

Mysql php我的管理员一对多关系,mysql,foreign-keys,phpmyadmin,admin,Mysql,Foreign Keys,Phpmyadmin,Admin,我正在使用mySQL和PHPMyAdmin 我的数据库中有三个表和字段 T_users; F_uID - varchar - (PK) F_Forename - text F_Surname - text T_candidates; F_bookingRef - int - auto increment - (PK) F_sessionID - int F_uID - varchar T_TrainingSessions; F_sessionID - int - auto increment

我正在使用mySQL和PHPMyAdmin

我的数据库中有三个表和字段

T_users;
F_uID - varchar - (PK)
F_Forename - text
F_Surname - text

T_candidates;
F_bookingRef - int - auto increment - (PK)
F_sessionID - int
F_uID - varchar

T_TrainingSessions;
F_sessionID - int - auto increment - (PK)
F_sessionDesc - text
F_sessionDate - date
我想在T_Users.F_uID和T_candidates.F_uID之间创建一对多关系

我还想在T_TrainingSessions.F_sessionID和T_候选人.F_sessionID之间建立一对多关系

但是,当我在PHPMyAdmin的任何表结构部分中单击“关系视图”时,我只能从下拉列表中选择主键字段

从我的阅读中,我认为这可能与索引有关,但是我没有设置索引的知识或经验

任何帮助都将不胜感激

:)


Tim

您可以从主键字段或具有唯一值的字段生成外键

如果你不能建立关系

T_Users.F_uID<---->>T_candidates.F_Uid
T_TrainingSessions.F_sessionID<---->>T_candidates.F_sessionID 
(one<---->>many)

可以从主键字段或具有唯一值的字段生成外键

如果你不能建立关系

T_Users.F_uID<---->>T_candidates.F_Uid
T_TrainingSessions.F_sessionID<---->>T_candidates.F_sessionID 
(one<---->>many)

你用的是什么发动机?示例:InnoDB,Myisamw您使用的是什么引擎?示例:InnoDB、MyISAMHi、Yes-T_Users.F_uID将始终是唯一的,T_TrainingSessions.F_sessionID也是唯一的。T_candidates.F_Uid和T_candidates.F_sessionID可能包含许多重复项。如果不太麻烦的话,你能告诉我你将经历的过程吗?:)您是否在phpmyadmin中将外键字段设置为唯一的?查看表的结构时,将显示字段,“操作”列下有多个图标。应该有一个图标,看起来像一个表,其中有一个U。确保外键字段已设置。您好,我可以看到您所指的图标。为了澄清一下,你是说我应该将T_candidates.F_Uid和T_candidates.F_sessionID设置为唯一的。这些字段不包含唯一的数据-这会导致问题还是我遗漏了什么?请参阅我编辑的文章,尝试使用此脚本,我不确定是否存在某些sintax错误(我在文本编辑器中编写了脚本)。您好,是-T_Users.F_uID将始终是唯一的,T_TrainingSessions.F_sessionID也是唯一的。T_candidates.F_Uid和T_candidates.F_sessionID可能包含许多重复项。如果不太麻烦的话,你能告诉我你将经历的过程吗?:)您是否在phpmyadmin中将外键字段设置为唯一的?查看表的结构时,将显示字段,“操作”列下有多个图标。应该有一个图标,看起来像一个表,其中有一个U。确保外键字段已设置。您好,我可以看到您所指的图标。为了澄清一下,你是说我应该将T_candidates.F_Uid和T_candidates.F_sessionID设置为唯一的。这些字段不包含唯一的数据-这会导致问题还是我遗漏了什么?请参阅我编辑的文章,尝试使用此脚本,我不确定是否存在某些sintax错误(我在文本编辑器中编写了脚本)。