php - 如何使用 mysqli 和 PHP 插入和删除链接的 MySQL 表?
问题描述
我有三个表:all_students、all_parents 和 students_parents(这是链接表)。
我插入这样的条目:
$sql = "INSERT INTO all_students (name, email) VALUES (?,?);";
$stmt = $conn->prepare($sql);
$stmt->bind_param("ss", $name, $email);
$stmt->execute();
if (mysqli_connect_errno()) {
$conn->close();
echo "Error: ". mysqli_connect_error();
exit;
}
$last_student_id = $conn->insert_id;
// get the parents $name and $email from POST data...
$sql = "INSERT INTO all_parents (name, email) VALUES (?,?)";
$stmt = $conn->prepare($sql);
$stmt->bind_param("ss", $name, $email);
$stmt->execute();
if (mysqli_connect_errno()){
$conn->close();
echo "Error: ". mysqli_connect_error();
exit;
}
$last_parent_id = $conn->insert_id;
// insert both parentid and studentid into students_parents table
$sql = "INSERT INTO students_parents (student, parent) VALUES (?, ?)";
$stmt = $conn->prepare($sql);
$stmt->bind_param("ss", $last_student_id, $last_parent_id);
$stmt->execute();
// close, etc..
如果我想从 all_students 中删除一个学生,有没有办法从 FUTURE 中的 students_parents 表中自动删除父项和学生 ID 条目。还是我必须再次从表中选择并找到 id 然后删除?
另外,有没有更好的方法来做到这一点,或者我的方法现在可以接受吗?
P/SI 知道有些学生没有父母,但为了简单起见,我只是将“父母”作为表名。它可能是监护人,而不是真正的父母。
解决方案
推荐阅读
- javascript - 使用依赖注入传递参数
- vba - 如何在 VBA 代码运行时禁用功能区
- jira - 使用 JIRA ''获取更新的工作日志的 ID'' REST api 时如何获取扩展属性?
- ios - 如何将 Firebase 数据的节点放置在数组中
- windows - Windows 10 上的 GPU 计算集群比 Ubuntu 18.04 更快
- java - BasicTabbedPaneUI 聚焦时显示边框
- angular - 如何在 ion-item 中使用 *ngFor 以便每个都有单独的功能
- sql - 如何为 postgresql 中的特定部分设置条件?
- excel - Excel VBA 数据透视表筛选器
- php - 在 XML 和 PHP cURL 应用程序中的 POST 后隐藏确认标头