我有一个表,它的存在纯粹是为了充当某些逻辑的数组。
该表应该只有一行,否则我的逻辑将失败。 是否有任何 DDL 命令可以禁用插入表?
到目前为止 - 我已经插入了逻辑所需的“一行”数据,现在计划创建一个插入后触发器来删除新输入的记录。 B)
但是我注意到有一些 ALTER TABLE 命令可以禁用/启用键,所以我想知道是否有触发代码的替代方案。
mysql> select version();
5.6.25-enterprise-commercial-advanced-log
最佳答案
这通常不是我们应该如何使用关系的方式,但它可以通过一列来完成,该列可能只采用一个值,但上面还有一个UNIQUE KEY
:
CREATE TABLE `MyTable` (
`ActualData1` INT NOT NULL DEFAULT 0,
`ActualData2` INT NOT NULL DEFAULT 0,
`ActualData3` INT NOT NULL DEFAULT 0,
`Dummy` ENUM("!") NOT NULL DEFAULT "!",
UNIQUE KEY `OnlyOneRowAllowed` (`Dummy`)
);
…如果您不介意存在一个您永远不会使用的附加列。
关于mysql - 是否有一种机制可以禁用插入表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32117013/