gpt4 book ai didi

mysql - 是否可以将 'row'插入到由具有公共(public)自增主键的多个表组成的 View 中?

转载 作者:行者123 更新时间:2023-11-30 23:36:03 25 4
gpt4 key购买 nike

我一直在阅读有关 MySQL 中的 View 的更多信息(这不是我的强项),但我现在想知道是否有人有示例说明如何将一行插入由多个表组成的 View 中,其中是父类(super class)型和子类型的关系?

例如,“派对模型”层次结构,显示雇主和员工的角色:

      party
_ _ | _ _
| |
employer staff

其中的表格(简化):

party                             employer               staff
-------------------------------- --------------------- -----------------
party_ID INT auto_increment (PK) party_ID INT (FK) party_ID INT (FK)
party_name VARCHAR tax_reference VARHCAR job_title VARCHAR
etc... etc... etc...

我知道我可以创建一个 View 来处理相关的关系:

CREATE VIEW staff_view AS SELECT party.party_ID, etc... FROM party INNER JOIN staff

当我添加一名员工时,我想在party表中创建一条记录,然后在staff表中引用自增的party_ID。我看不到如何在一条语句中执行插入,例如:

INSERT INTO staff_view (party_name, job_title, etc...) VALUES ('John Doe', 'CEO', etc)

我知道我可以通过编程实现这一点,但我希望有一种方法可以直接在数据库中实现并保持参照完整性。您将如何处理这个问题?

(MySQL 文档:http://dev.mysql.com/doc/refman/5.1/en/view-updatability.html)

最佳答案

也许您可以通过插入 trigger 来解决您的问题?

关于mysql - 是否可以将 'row'插入到由具有公共(public)自增主键的多个表组成的 View 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7272807/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com