if(!isset($_SESSION["table"])){
$_SESSION["table"] = uniqid();
$table = $_SESSION["table"];
$query = "
CREATE TEMPORARY TABLE `" . $table...
因此每个用户都创建自己的临时表。单击按钮,表经常使用jquery ajax更新。
从技术上讲,似乎一切正常,我发现这是一种处理数据的简单方法,与php数组相比。
但我仍有一些困境:
临时表存储在哪里?它不存在于phpMyAdmin中?
可能(appache或sql)服务器太忙于同时从多个用户更新每次点击的表格吗?
是否有一种简单的方法可以转换此温度。表到永久表?
答案 0 :(得分:1)
根据文档temporary tables are only within the scope of the session you have。
TEMPORARY表仅对当前会话可见,并且是 会话关闭时自动删除。这意味着两个 不同的会话可以使用相同的临时表名称 相互冲突或与现有的非TEMPORARY表冲突 同名。
同时执行多个语句会非常繁琐...我建议你考虑将查询放入一个可执行函数中,按顺序执行每个语句。
您可以将数据存储在临时表中,然后您可以将其选出 见Docs
老实说如果你想将一个临时表转换成数据库中的一个表,我不知道为什么你不会只是创建表并完全跳过临时表进程...这将使你的整个过程快得多。您还可以在创建更新后查看锁定表,同时还有大量更新。