如何为简单的 Web 应用程序构建数据库模型并组织 SQL 数据模型
我正在开发一个网络应用程序。我有一个关于 SQL 部分的问题。我目前正在创建一个食品评级界面。用户应该能够登录然后对食物进行评分。
目前我使用自定义数据库(用户)作为登录页面。我还使用一个单独的数据库(评论)来进行评论。我当前的数据库结构没有意义。
在附图中,您可以看到这些表,它们目前是单独的数据库,每个数据库只有一张表。我在 VSCode 中使用 MySQL 扩展。
如何将这些表合并到一个数据库中?我正在寻找解决这个问题的一些想法。
最好只在登录时需要用户名,而不必在评级中单独输入(不幸的是仍然是最新的)。
将来,用户在登录后应该被引导到一个页面,他可以在其中选择他的菜肴,然后他应该对其进行评分。每道菜都应该单独保存评级,以区分这一点。
I am working on a web app. I have a question about the SQL parts. I am currently creating a food rating interface. The user should be able to login and then rate the food.
Currently I use a custom database (users) for the login page. I also use a separate database (review) for the reviews. my current database structure makes no sense.
In the attached image you can see the tables, they are currently separate databases with only this one table each. I use MySQL extension in VSCode.
How can I combine the tables into one database? I am looking for some ideas for this problem.
Preferably the username should only be needed for login and not have to be entered separately in the rating (as unfortunately still current).
In the future, the user should be directed after login, to a page where he can select his dish, then he should rate it. Each dish should save the ratings individually, to distinguish this of course.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我建议您使用
user
表作为评论的参考,并使用表dish
来显示每道菜的详细信息。以下是建议的表定义,可根据您的需求进行微调:
感谢 Mishi 对
外键
语法的改进,使其更加可移植。我将表的创建
review
放在最后,因为一些 SQL 引擎会在我们声明外键时检查表是否存在。db<>fiddle 此处
I suggest that you do use the
user
table as a reference for reviews, and also a tabledish
with the details of each dish.Here are suggested table definitions, to fine-tune to your needs:
Credits to Mishi for the improvement to
foreign key
syntax to make it more portable.I've put the creation of the table
review
last because some SQL engines check that the table exists when we declare a foreign key.db<>fiddle here