从UI输入向表中添加新列


Adding new column in table from UI input

我对web应用程序非常陌生,并试图使用phpMysql制作一个简单的web应用程序。
我创建了一个名为Item的表,它有2列penpencil
对于每个用户,我在这两列中插入值。假设将来我从UI得到一个新的项目sharpner。我想在这个Item表中自动创建一个新列,每次我从UI获得一个新项目。我正在寻找任何库或工具使用,我将能够做到这一点。

我想自动创建一个新列

不,你没有。

您已经定义了两个实体。项的实例,以及项的类型。为每个

创建一个表
item_type
----------
ID
Name
item
----------
ID
ItemTypeID
[other data you're tracking]

item.ItemTypeID列是item_type表的外键。

当用户添加一个新的"item type"时,您将在item_type表中添加一条新记录。然后,您可以自由地将该类型项目的实例添加到item表中。

大量大多数情况下,动态修改模式并不是您想要的。定义要跟踪的数据的结构并构建该结构。然后只需添加/修改/删除该数据的记录。不要重构数据本身

正如David所指出的,在关系数据库领域有更好的设计。但是,如果您的应用程序本质上需要某种动态模式,则可以考虑使用面向文档的数据库,如MongoDB或Couch。