回答

收藏

限制一列只接受两个值

技术问答 技术问答 293 人阅读 | 0 人回复 | 2023-09-14

表中有一列叫病人类型。我想确保只能插入两个值opd或accepted除此之外,所有其他输入都无效。
9 X) s) p* c" K: S以下是我想要的例子
# ?* m0 w. L( j; H- Y* t
4 O. t+ n/ U) d! U6 g& `: ~; T如何确保该列只接受 opd”或“ admitted作为病人类型列的数据。
- C$ {! Z7 q) N5 S% u                                                                - o  k/ c8 \" f+ H% \
    解决方案:                                                               
! ]( f) |* m3 S6 \, D, o) Z8 \& R                                                                您需要检查约束。- \2 i1 d1 }8 S7 J2 K  b8 r5 E
ALTER TABLE [TableName] ADD CONSTRAINT my_constraint CHECK (PatientType = 'Admitted' OR PatientType = 'OPD')从现在开始,你需要检查它是否在MySQL特别有效。9 F; [+ ?9 S  b8 _, \8 y+ f0 @
它似乎不起作用(或至少几年前没有)。7 m3 x8 h5 K$ Z! F  n
MySQL CHECK约束
. I2 z, X7 C" A  b+ T. XMySQL CHECK约束解决方案
0 }- C- |; G( c不确定现在是否解决了。7 j& O# c+ _4 J! E" t" y
如果不起作用,请使用触发器而不是检查约束。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则