【发布时间】:2014-03-03 05:33:51
【问题描述】:
我目前正在开发一个允许医生动态生成发票的应用程序。事实上,每个医生需要 6 个不同的数据库表,可能有大约 50 个医生同时连接并同时使用数据库(写入和读取)。
我想知道我的应用程序的构造是否合适。对于每个医生,我创建了一个只有他可以连接的个人 Sqlite3 数据库(所有数据库都是安全的)。我会有 200 个 Sqlite 数据库,但是有什么问题吗?我认为这可能比为每个人都使用大型 MySQL 数据库更好。
这个解决方案可行吗?我会有问题需要处理吗?我从来没有做过这么多用户的应用程序,但我认为这可能是最好的解决方案
【问题讨论】:
-
为什么它必须是单独的数据库,真的吗?如果不可避免,为什么不在 MySQL 服务器上分离数据库?
-
每个医生都有不同的数据,还有很多数据,但是如果我在 MySQL 上有 1000 个不同的表可以吗?每个表中可能有 1000 行数据
-
你为什么会有不同的桌子?只需有一列标识负责该行数据的医生。
-
但这意味着遍历所有表以查找每个医生的数据?如果我只有一张表,这意味着每张表中至少有一万条数据。如果其中一位医生犯了错误,则所有表都已损坏
-
如果你在表上有正确的索引,你就永远不会“迭代一万个数据”......而且医生不能犯这样的错误(希望,因为他没有直接访问数据库的权限),只有您的代码可以。如果您真的想分离数据,至少只需创建单独的数据库,其中包含具有各自访问权限的不同 SQL 用户;如果您真的热衷于安全性,那仍然有意义。
标签: php mysql database sqlite web-applications