gpt4 book ai didi

php - 每个用户的 mySQL 数据都是唯一的

转载 作者:行者123 更新时间:2023-11-29 13:59:05 26 4
gpt4 key购买 nike

我正在使用 MySQL/cakePHP 构建一个应用程序,其中涉及以下要求。

  • 管理员创建用户需要完成的步骤。例如是/否类型的问题。管理员创建这些步骤,新用户应该了解它们。

  • 用户登录时需要完成所有这些步骤。

我的问题是在数据库(mySQL)中执行此操作的最佳方法是什么

  • 当用户注册时,它会查询步骤表并为该用户的每个步骤创建新行?它通过查看步骤表从服务器端代码创建行?

  • 创建一个新的临时表来存储关系?

我在关系设计方面相当有经验,但对实现这一目标的最佳方式以及同时证明自己面向 future 的最佳方式感到有点困惑。

**Mock Structure**
Steps
id
name
order
desc


**Users**
id
username


**Step_Users**
step_id
user_id
result1
result2
result3

最佳答案

基本上你的 table 没问题。这是一种场景:有人注册。您可以从表 Steps 中获取所有步骤,并使用此字段创建一个表单。用户填写表格并提交。然后,您将这些答案写入 step_user 表。并且以某种方式保留用户已完成答案的信息(可能是某个地方的另一个字段,或者只是检查 step_user 表中是否有他的行)。当然,根据您的具体需求,有不同的方法来处理这个问题。因为您没有提到更多细节,所以我可以在这里提到更多场景,但不确定它们是否有帮助。
如果您想确保每个用户的每个步骤都有唯一的数据,那么您应该在表 step_user 中对 step_id 和 user_id http://www.w3schools.com/sql/sql_unique.asp 列创建一个复合唯一索引,但当然您还需要代码来检查这一点。

关于php - 每个用户的 mySQL 数据都是唯一的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15361672/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com