Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 是否有一种机制来禁用insert into table?_Mysql - Fatal编程技术网

Mysql 是否有一种机制来禁用insert into table?

Mysql 是否有一种机制来禁用insert into table?,mysql,Mysql,我有一个表,它的存在纯粹是为了作为某种逻辑的数组 这个表应该只有一行,否则我的逻辑就失败了。 是否有任何DDL命令来禁用insert into table 现在-我已经插入了逻辑所需的“一行”数据,现在,计划创建一个插入后触发器来删除新输入的记录。(B) 然而,我注意到有一些ALTERTABLE命令用于禁用/启用键,所以我想知道是否有一种替代触发器代码的方法 mysql> select version(); 5.6.25-enterprise-commercial-advanced-log

我有一个表,它的存在纯粹是为了作为某种逻辑的数组

这个表应该只有一行,否则我的逻辑就失败了。 是否有任何DDL命令来禁用insert into table

现在-我已经插入了逻辑所需的“一行”数据,现在,计划创建一个插入后触发器来删除新输入的记录。(B)

然而,我注意到有一些ALTERTABLE命令用于禁用/启用键,所以我想知道是否有一种替代触发器代码的方法

mysql> select version();
5.6.25-enterprise-commercial-advanced-log

这通常不是我们应该如何使用关系,但可以使用一个列来完成,该列可能只具有一个值,但其上也有一个
唯一键

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`)
);

…如果您不介意存在一个额外的列,否则您将永远不会使用。

当然,不要将此表上的
INSERT
权限授予普通用户。

它可以使用
INSERT-INTO-MyTable(ActualData1,Dummy)值(0,0)插入。
我知道了,我错过了您使用的
default”
用于
虚拟
字段。我的错。