我已经创建了我想要的表格以及我想要的方式。我刚刚意识到我希望它在 session_destroy() 上销毁。我知道我可以轻松地做到这一点CREATE TEMPORARY TABLE。当我通过添加来编辑以下代码时,TEMPORARY未创建表。它是在TEMPORARY不存在时创建的。$sep = '';$sql = "CREATE TABLE `".$unique_id."`(";$sql.= PHP_EOL;$sql.= "`Name` VARCHAR(255) NOT NULL,".$sep;foreach ($year_range as $year) { //ADD SEPERATOR BETWEEN LINES if ($year != end($year_range)) { $sep = ','; } else { $sep = ''; } $sql.= "`".$year."` VARCHAR(255) NOT NULL".$sep;}$sql.= PHP_EOL;$sql.=')';我已经添加了TEMPORARY,它没有注册也没有创建表。任何人都可以阐明我可能做错了什么吗?谢谢。
1 回答
德玛西亚99
TA贡献1770条经验 获得超3个赞
您应该研究关系数据库的更好用途,而不是像这样动态创建表。
我认为你只需要 2 个具有一对多关系的表
像这样的设置应该可以工作:
Table 1: User - basically a replacement for multiple dynamic tables. Stores an identifer for the user of the site.
Columns: unique_id (auto increment) | user (user identifier)
Table 2: years - contains a row for each year
Columns: unique_id (auto increment) | users_identifier (unique_id from users table) | year | stages_match
这利用了一种称为“外键”的东西。基本上,这意味着“该行属于另一个表中的 unique_id”
您可以像现在删除表一样删除数据;当用户结束会话时,删除用户表中属于该用户的所有行。如果您正确设置外键,这也会从 Years 表中删除该用户的所有行。
- 1 回答
- 0 关注
- 70 浏览
添加回答
举报
0/150
提交
取消