我知道这毫无意义...而且我是使用MySQL的新手...
我在这里要做的是将一个表行链接到另一表行...
例如,有两个表。
一个表用于用户注册,同一表也用于登录...
下表是针对用户帖子的。例如状态更新和所有...

这就是我想要的...

user_log_info:-
id ( primary )
firstname
lastname
username
email
password

posts:-
id ( primary )
userposts
posted_by
date_post


如您所见,我希望将user_log_info表用户名自动复制到posts posted_by行...而且我不知道如何保存此文件...

最佳答案

您没有提供足够的信息来提供完整的答案,但是我会尽力提供您所提供的信息。

桌子

+-----------------+ +-----------------+
| users_log_info  | | posts           |
+-----------------+ +-----------------+
| int ID (primary)| | int ID (primary)|
+-----------------+ | int posted_by   |
                    +-----------------+


(我省略了与您似乎想要执行的操作无关的字段,我只是在简化它)

posted_by是非官方的foreign key,或引用另一个表的主键。

要插入,您可以按照以下步骤操作:

INSERT INTO posts(...., posted_by) VALUES (...., user.ID)


....引用您的所有其他信息插入

然后,查找有关发布内容的人的信息:

SELECT * FROM users_log_info WHERE ID = Post.posted_by


或者,如果您想按用户查找所有帖子:

SELECT * FROM posts WHERE posted_by = user.ID


因此,如果用户ID为3的Bob想要发布“ Hi”,则您可以执行以下操作:

INSERT INTO posts(content, posted_by) VALUES('Hi', bob.ID)


然后在输出帖子时,您可以执行以下操作:

post = (however you choose the post to put on the page)
userPosted = SELECT * FROM users_log_info WHERE ID = post.posted_by

print post.content + " posted by: " userPosted.Name


本质上,字段“ posted_by”是用于“发布”任意数字,但是您知道它链接到或引用了用户。它是通过引用“ ID”(这是users_log_info的主键)来完成的,因此,当您要从users_log_info获取信息时,只需要做的就是选择ID与“ posted_by”相对应的条目。我确实建议将其命名为posterID之类的名称,以便于识别。

关于php - 如何将MySQL数据库表的一行链接到另一个表的另一行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21219769/

10-14 14:54
查看更多