MariaDB 10.1.48 中的检查约束不起作用 2024-12-3 • mariadb 我有下表: CREATE TABLE t1 ( a INT, b INT, CONSTRAINT a_greater CHECK (a>b) ); 因此,a 必须大于 b。执行此插入时,它不应该起作用: insert into t1(a,b) values (4,5); 我仍然能够运行该声明。 数据库的版本:10.1.48-MariaDB-0+deb9u2 我知道,我可以用触发器来实现这一点,但这太费力了,只是为了做 CHECK-Constraint 实际上应该做的事情。 是否存在错误,或者可能是由于配置错误导致的?什么原因导致了此行为?我该如何修复它? 答案1 MariaDB约束 章节中有这样的陈述: 在 MariaDB 10.2.1 之前,约束表达式在语法中被接受但被忽略。 您的 MariaDB 10.1.48 版本太早,因此 CONSTRAINT 子句在语法上经过验证,但在其他方面被忽略。 您需要升级 MariaDB,当前版本是 11.4.1从 2024 年 2 月开始。 相关内容 USB-Wifi 驱动程序中的 BSOD - rtwlanu.sys - 系统线程异常未处理 通过在线链接打开Word 在 Google Chrome 中翻译 从 SSH 启动 jetty 服务 PowerShell:使用 Try/Catch 调用命令并添加到外部数组 我的 lighttpd.conf 中的 ServerRoot [关闭] Karabiner Elements 请求输入监控权限,即使该权限已被授予 Hyper-v 和 ubuntu 10.04 apt-get 更新 Graphite 不显示所有数据点 如何在 Acrobat 中永久裁剪?