【发布时间】:2017-06-19 19:07:40
【问题描述】:
我们正在尝试构建一个系统,将某些关键字保存在数据库中,然后当用户在文本框中键入一个或多个这些关键字时,它会创建特定于该关键字的额外输入(通常是 5-10 个文本框)也存储在mysql表中。 到目前为止,当页面检测到关键字时,我们已经准备好使用大约 1100 个表列。但是当我尝试在 phpMyAdmin 中编辑或添加新的时,每次点击后我都必须等待一段时间,有时整个 cPanel 会崩溃。
大公司如何处理这个问题?我确信他们存储的数据比我们的应用多得多。
我认为在服务器上写入和读取文本文件可能是一种方式,但实际查询似乎并不慢。 MySql 是为这样的事情而设计的,对吧? 我尝试导出表格,但文本文件太难阅读或无法打开。
我想把桌子分成更小的桌子。每个关键字输入的一个表。但我认为这会使事情变得更加复杂,我必须处理 150 多张桌子。不确定我是否可以管理它认为所有使其用户友好的动态 html、javascript 和 php 代码。到目前为止只有一个工作,但在 phpMyAdmin 中太慢了。
谢谢
【问题讨论】:
-
我没看错 - 一张表中有 1100 列?
-
重新考虑您的数据库设计。这需要很长时间,因为您的数据库需要很长时间。当您将一列添加到一个非常大的表时,它必须更新该表中的每一行。您可以查看数据透视表,或者只是一个“较小”(也称为垂直而不是水平——更多行,更少列)关系表。
-
是的,哈哈,这似乎比拥有 150 个表并必须弄清楚要查询哪一个要容易得多。他们希望每个关键字都有特定的唯一输入字段,所以我不得不对每个关键字进行一半的硬编码。
-
您能否更具体地说明您要在此表中存储的内容?
-
每个关键字输入一个表 否一个表可能有 2 列关键字和值
标签: php mysql database phpmyadmin storage