我正在尝试使用变量自动在数据库表中插入一列。
我有一个名为tbl_category
的表,我想让用户根据自己的选择选择子类别字段。因此,从仪表板中,用户将插入3/4(或他们想要创建的字段数)子类别字段。
我将此值视为$insert_sub_cat_count
。因此,当此信息将点击名为function save_category_info($data)
的函数时,该函数将获得$insert_sub_cat_count
的值$data
。
之后,此信息必须在表tbl_category
中实现,并根据值$data
自动添加3/4字段。
如果用户输入2
,则会自动插入两列:
如果用户输入3
,则会插入3列:
这可能吗?我不知道如何自动扩展列,或者是否有其他方法可以这样做。
答案 0 :(得分:1)
Insert用于将变量插入到现有列中,您需要在填充之前先创建列:
[class*="weather/"]
答案 1 :(得分:1)
从一开始就是一个坏主意。正如Raymond Nijland上面所说的那样("带有增量的相同列名是SQL反模式......你应该检查表规范化而不是#34;),你不应该允许用户创建具有所需名称的列。你的数据库。您应该有以下表格:
user - id, name
categories - id, id_user, name
subcategories - id, id_category, id_user, name
因此,您可以将类别和子类别链接到创建它的用户。您不需要为每个用户创建单独的列。 如果您担心速度,则应为子类别表添加索引,列为:id_user。通过这种方式,搜索将足够快。