如何将每个学生的申请数量限制为 3 份?
我有一张表“学生”和一张表“应用程序”。
每个学生最多可以申请3门课程。我怎样才能确保在数据库中?扳机?约束?
你能告诉我怎么写吗?我是 SQL 新手
I have one table 'Students' and one table 'Applications'.
Each student can apply for max 3 courses. How can I ensure that in database? Trigger? Constraint?
Can you show me how to write it? I'm new to SQL
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
一种方法是对学生进行反制。当向应用程序插入一行时,它会增加它;当删除一行时,它会减少它。使用触发器执行此操作非常简单。
然后对 Students 施加约束,使计数器必须 <= 3。
One way is to put a counter on students. When a row is inserted to Applications increment it, when a row is deleted, decrement it. Doing this with triggers is very simple.
Then put a constraint on Students so the counter must be <= 3.