php - 如何使用日期作为新列名

标签 php mysql

我正在尝试向我的 MYSQLi 添加一个新列使用 PHP 的表格.我不确定如何改变我的 table 。我想使用 Time 中的数据来添加这样的新列

Time | 2016-Mar-06-22:40 2016-Mar-06-22:40 | YES

编辑:当时间改变时,将像这样创建一个新列

Time | 2016-Mar-06-22:40 | 2016-Mar-06-23:00 2016-Mar-06-23:00| YES | NO

这是我的代码

 $MyTime = date("Y-M-d-H:i"); 
 $sql = $conn->query("ALTER TABLE MyTable ADD $MyTime enum('YES', 'NO') "); 

我尝试添加 2016-Mar-06-22:40phpMyAdmin完成了,但是当我尝试在 php 中完成时mysqli代码,它没有为我创建新列。

提前致谢

最佳答案

答案很简单:您应该永远不要添加任何看起来像日期时间的列。这些值必须存储为数据值,而不是列名。

您可能需要一个相关 表来存储日期时间值。

您正在使用的数据库称为关系 是有原因的。意味着您不必将所有必需的数据存储在同一个表中。相反,您可以使用多个表,同时在它们之间安装关系

所以,你可能需要这样一张表

main_table_id | datetime          | value

然后将任何数字或记录插入到此表中

1             | 2016-Mar-06-22:40 | YES

关于php - 如何使用日期作为新列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35829191/

相关文章:

php - 从数组列表创建数组树

php - 修补匠在Laravel 5.8中给出了异常(exception)

php - 在插件中访问 WordPress 核心功能

PHP-MYSQLI : Inserting User Error

mysql - 一个子类别可以属于多个类别

php - 使用 PDO 准备语句在 MySQL 中插入 BIT 值

php - 我们在处理 session 时必须使用 mysql_real_escape_string() 吗?

php - 1.3M 查询/小时。您将如何构建查询?

mySQL获取最大id在哪里

php - 使用自定义条件在 PHP 中分解数据