Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 动态添加mysql列_Php_Mysql - Fatal编程技术网

Php 动态添加mysql列

Php 动态添加mysql列,php,mysql,Php,Mysql,当我尝试插入一行时,有没有办法动态添加mysql列 例如,表包含A、B、C列,我想在表中插入一行,其中包含A、C、D和F 是否有办法实际添加D和F列而不是导致错误?您可以使用Alter和add向表中添加新列 比如, ALTER TABLE contacts ADD email VARCHAR(60); 将在contacts表中添加一个名为email的新列,其类型为ifVarchar 当然,在插入行之前,必须检查要添加的列, 添加它们,然后插入新行。例如,您可以使用ALTER TABLE并为其提

当我尝试插入一行时,有没有办法动态添加mysql列

例如,表包含A、B、C列,我想在表中插入一行,其中包含A、C、D和F


是否有办法实际添加D和F列而不是导致错误?

您可以使用
Alter
add
向表中添加新列

比如,

ALTER TABLE contacts ADD email VARCHAR(60);
将在
contacts
表中添加一个名为
email
的新列,其类型为if
Varchar

当然,在插入行之前,必须检查要添加的列,
添加它们,然后插入新行。

例如,您可以使用ALTER TABLE并为其提供所需的任何查询

ALTER TABLE TABLE_NAME
ADD COLUMN_NAME (ATTRIBUTE)

希望这对您有所帮助

谢谢Glaceisofpacis和Adev

你让我对我问的问题有了不同的想法,你的解决方案看起来比我最初想的要优雅得多

我将使用ID、Key、Value模型,而不是只有很少的行和超过100列的表


谢谢大家!

出于好奇,为什么需要添加列?请参阅下面我对Ofir Baruch的评论为什么不为表使用键值关系?也就是说,您的表总共有三列:userid、key、value。主键(userid,key)你是个天才!你让我高兴极了。唯一的小问题是值的类型(也就是说,其中一列应该是时间戳,其中一些是文本而不是varchar,但我真的不关心表的效率,因为它的使用将是最低限度的好吧,这正是问题所在,如果我知道我将拥有数据库的哪些字段,就没有理由动态添加字段。我将只是dumpi使用变量名作为列名将各种变量放入数据库中,我不想费心弄清楚哪一列已经存在……我没有跟踪您……当您获得新值时,您可以检查要添加的字段(例如,使用
if
)。然后,添加这些字段并插入值。以适当的方式重写您的问题,以便我能够理解。
并添加一个示例。