面向GUI的Php/mySQL数据库
只是一个一般的数据库设计问题-没有编程,但有一点问题的解决我不能得到我的头左右 我有一组GUI页面,每个页面都包含一组“模块”——基本上是样式化的内容框,其中包含一些与页面相关的功能/信息 页面和模块在呈现之前都被实例化为php对象。我希望从数据库中调用这些对象(标题、内容等)的变量 我无法解决的是如何将这些数据存储在数据库中。我有一个表,其中每个条目都是一个页面,还有一个表,其中每个条目都是一个模块,但我无法确定如何存储表示每个页面具有的模块的数据,特别是考虑到这些模块可能对多个页面是通用的面向GUI的Php/mySQL数据库,php,mysql,database-design,Php,Mysql,Database Design,只是一个一般的数据库设计问题-没有编程,但有一点问题的解决我不能得到我的头左右 我有一组GUI页面,每个页面都包含一组“模块”——基本上是样式化的内容框,其中包含一些与页面相关的功能/信息 页面和模块在呈现之前都被实例化为php对象。我希望从数据库中调用这些对象(标题、内容等)的变量 我无法解决的是如何将这些数据存储在数据库中。我有一个表,其中每个条目都是一个页面,还有一个表,其中每个条目都是一个模块,但我无法确定如何存储表示每个页面具有的模块的数据,特别是考虑到这些模块可能对多个页面是通用的
嵌套表是理想的答案,mySQL允许吗?这听起来像是一种多对多关系。您需要第三个“链接”表。例如,如果您有以下表格:
CREATE TABLE pages (
id INT(11) NOT NULL,
title VARCHAR(40),
PRIMARY KEY (id)
);
CREATE TABLE modules (
id INT(11) NOT NULL,
title VARCHAR(40),
PRIMARY KEY (id)
);
您将创建第三个表,如下所示:
CREATE TABLE pages_modules (
pid INT(11) NOT NULL,
mid INT(11) NOT NULL,
PRIMARY KEY(pid, mid)
)
从这里,您可以通过在此表中为每个页面/模块对创建一个条目,将模块添加到不同的页面。可能显示要存储的值的模式/大纲,可能有助于可视化您的解决方案。干杯,伙计,这显然是唯一的方法。非常感谢!