php - 如何使用 NotORM 连接多对多表

标签 php mysql sql relational-database notorm

我正在学习 NotORM 来为学校制作一个简单的系统。我希望能够将“ promise ”授予“学生”。这是我的数据结构:

我的表:

学生

  • -studentid (PK) -名 -姓 -出生日期 -vmg -年级

链接

  • -linkid (PK) -studentid (FK) - promise (FK) -获奖时间

promise

  • - promise (PK) - promise 名称 - promise 信息

很棒的 NotORM 教程 (http://www.sitepoint.com/database-interaction-made-easy-with-notorm/) 中的代码说我应该这样做:

<?php
foreach ($books as $book) {
echo "<tr>";
echo "<td>" . $book["title"] . "</td>";
echo "<td>" . $book["author"] . "</td>";
// book_category table joins book and category
$categories = array();
foreach ($book->book_category() as $book_category) {
    $categories[] = $book_category->category["category"];
}
echo "<td>" . join(", ", $categories) . "</td>";
echo "</tr>";
}
?>
  1. 我的数据结构是否适合使用 NotORM
  2. 我如何翻译示例,以便它显示学生以及他们获得了哪些奖项。 - 我觉得我已经尝试了该代码的所有变体,但仍然无法正常工作。

非常感谢。

最佳答案

问题的关键:从关系表(此处为链接)开始,并在 NotORM 上中继以加入其他表。

看看代码可能有多简单:

$db->link("pledge.name", $someName)->select("student.firstname, student.lastname");

关于php - 如何使用 NotORM 连接多对多表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24529937/

相关文章:

php - 如何在 mysql 中使用单个查询从另一个表中获取计数(没有数据时为零)?

MySql软删除

sql - 我可以在 SQL Server 上创建动态表值函数吗?

sql - 如何使用 postgres 触发计算会计软件中的余额

java - 在哪里查找我的程序中第 331 行更新数据库语句中的错误

php - 在 Laravel 中将旧表迁移到新表

php - 子选择或子查询

php - "call"一个 php 文件的最安全方法

mysql - 如何使用EntityFramework Core连接mysql数据库?

php - 高效的mysql数据库结构建议