php - 如何使用 Zend 链接三个 MySQL 表?

标签 php mysql zend-framework database-design



我有个问题。

我在 MySQL 中有三个表,一个包含 标签,一个包含 帖子,第三个使用 ids 链接标签和帖子

当我添加包含标签的帖子时,我会插入标签,然后在表之间建立链接。现在我有两个父表(标签和帖子)和一个链接它们的子表。

我的目标:当我删除帖子时,我想删除标签和帖子之间的所有链接,并且还想删除不与其他帖子链接但依赖于我删除的帖子的标签。

这是我的 table 。我知道他们没有很好地联系在一起。我认为,如果我将 posts_tags 设为 posts 父级,并将 posts_tags 设为标签父级,就可以解决我的问题,但如果从帖子中级联删除,标签也将被删除。仅当它们与其他帖子之间没有链接时,我才希望删除它们。

我忘了说我在使用zend框架时遇到了这个问题,我仍然需要用zend来解决它。

posts
Field       Type         Null    Default    Comments
id          int(11)      No           
title       varchar(200) No           
description longtext     No           
address     varchar(100) No           
added       datetime     No           

post_tag
Field     Type      Null    Default    Links to       Comments
id_tag    int(11)    No     0          etichete -> id      
id_post   int(11)    No     0          turism -> id      

tags
Field    Type         Null    Default    Comments
id       int(11)      No           
name     varchar(50)  No

谢谢

最佳答案

您需要更强大的数据库抽象层。看http://www.doctrine-project.org/例如。

Zend_Db 真的很好。我的 cli/cron 脚本经常使用它作为辅助数据库层,但是如果您需要更多,您必须使用其他工具或手动编写(构造)sql。可以使用 zend_db - 3 个或更多查询来完成...但是...

关于php - 如何使用 Zend 链接三个 MySQL 表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6876616/

相关文章:

php - 我可以有一个与任何其他表无关的数据库表吗?

mysql - 使用 MySQL,如何计算一个选项中的成员而不是另一个选项中的成员?

database - ZF Db 附加到列

php - 文件提前结束,直接上传youtube

php - Zend 框架 : set Module as Subdomain

php - 使用 Zend 框架创建绝对 URL 的最佳实践?

php - 如何指定使用哪种方法(存储和更新)laravel

MYSQL SUM 功能通过 'value' 列对表组中的总行 'key'

php - UTF-8贯穿始终

php - 一起运行完全不相关的查询的最佳方式?