首页 > 解决方案 > 每个用户的专用 MySql 表

问题描述

我是一个(自学成才的)独立开发者,试图构建我的第一个全栈应用程序。我真的找不到有关该主题的太多信息,也许我走错了路:

我所取得的成就:

我想要达到的目标:

目前,一旦用户注册并登录,他们就只能访问一个通用的 CRUD 用户表。所以任何用户都可以修改普通的 CRUD 用户表。但我想要的是每个用户都有他的私人 CRUD 用户表。

应用的栈是:SCSS;Node.js;Express.js;Handlebars;MySql

我愿意学习任何其他工具来继续使用该应用程序。感谢您提供任何路线图/建议!

标签: javascriptmysqlnode.jsexpresscrud

解决方案


如果您必须使用此每用户表应用程序设计,您将执行以下操作:

  1. 在每个新用户在您的应用上注册时创建用户表。您可以在包含用户的共享表中使用用户的自动递增 id 来命名表。
  2. 当用户登录您的站点时,您将在您的代码中使用相同的表名来创建各种 SQL 语句来驱动您的应用程序。

但是,这种应用程序设计并不能很好地扩展。MySql 可以在单个服务器上处理数百个表,但不能处理数千或数万个表。这是因为每个同时打开的表都会占用大量 RAM、CPU 和 IO 资源。所有这些资源都是昂贵且有限的。请考虑使用带有userid列的共享表的替代设计。


推荐阅读