Mysql表的设计和实现

时间:2015-08-05 06:18:25

标签: php mysql

我想在我的数据库中创建这个表:

ID - 名称 - Major1 - Univ1 - Major2 - Univ2 - Major3-Univ3

问题是,也许用户做了9个专业。我要做的是创建一个包含18个专业和大学专栏的表格......那么这种情况下是否有动态技术?

3 个答案:

答案 0 :(得分:2)

制作3张桌子

主要表格

Universities
id | name

Majors
id | name

students
id | name

<强> bridge_table

student_major
students_id|university_id|major_id 

答案 1 :(得分:0)

您使用两张桌子。 :)

一张桌子是学生桌。 一个表是大学/主要表,其中包含指向另一个表中student_id的链接。然后学生可以获得无限的专业。 ;)

答案 2 :(得分:-1)

我认为你可以在这种情况下使用序列化数据

例如 你可以像这样创造一个表

ID - 名称 - 信息

Array
(
[0] => Array
    (
        [0] => Name of the University 0 
        [1] => Major 0
    )

[1] => Array
    (
        [0] => Name of the University 1 
        [1] => Major 1
    )

[2] => Array
    (
        [0] => Name of the University 2 
        [1] => Major 2
    )

)

你的SQL查询看起来像那个

$info = serialize($array);

$query = "INSERT INTO tablename(id, name, info) VALUES(null, 'name', $info)";

您可以使用

获取数据
unserialize($data["info"]);

祝你好运,