MySQL如何链接表

MySQL如何链接表,mysql,Mysql,我正在尝试使用mysql创建一个待办web应用程序。有人能解释一下我如何为一个用户选择特定的TODO吗?如何将用户表与todos表链接?一般建议将被优先考虑,而不是实际代码。它被称为外键关系。事情是这样的 users table ----------- id (auto increment primary key) name address ... todos table ----------- id (auto increment primary key) user_id (id from

我正在尝试使用mysql创建一个待办web应用程序。有人能解释一下我如何为一个用户选择特定的TODO吗?如何将用户表与todos表链接?一般建议将被优先考虑,而不是实际代码。

它被称为外键关系。事情是这样的

users table
-----------
id (auto increment primary key)
name
address
...


todos table
-----------
id (auto increment primary key)
user_id (id from users table - this is the foreign key and relation to the user)
todo_text
...
如果以后要选择用户的TODO,则可以使用连接:

select todos.*
from todos
inner join users on users.id = todos.user_id
where users.name = 'john'

你可以通过id链接它们

因此,如果您有两个表(UserTable)和(ToDoTable),那么您将通过如下选择获得todo

Select * from ToDoTable where ToDoTable.user_id = 1;
该查询本质上是说,从用户是bob的ToToTable(因为bob的主键id为1)开始,为我提供一切

用户表将包含以下用户:

Name | id  
Bob    1  
John   2  
而ToToTable将拥有

Task           |  user_id  
Clean dishes        2   
Take out Trash      1  
这样,我们就可以通过用户id将任务链接到用户表
用户表将有一个主键(id)

并且它在todo表中作为外键引用

非常感谢!!!但我还有一个问题。例如,如何让“john”成为当前登录的用户,以便将任务插入特定用户的表中?我需要一个变量吗?我不太确定你的要求。最好问一个新问题。你在新问题中输入的信息越多,你得到准确答案的速度就越快。添加代码总是好的。祝你好运