gpt4 book ai didi

mysql - 只在表为空时插入

转载 作者:行者123 更新时间:2023-11-29 04:32:36 24 4
gpt4 key购买 nike

如果只有表是空的,我想在表中插入一行。我经历了这个 Execute INSERT if table is empty?但我无法这样做。我正在使用 MariaDB 作为 rdbms。请帮助。提前致谢。

这是我的 sql 语法:

INSERT INTO `policy` (`policy1`, `policy2`, `policy3`, `policy4`)
SELECT ('F', 'F', 'F', 'F')
WHERE NOT EXISTS (SELECT * FROM `policy`)

我的表结构是:

CREATE TABLE `policy` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`policy1` varchar(255) DEFAULT NULL,
`policy2` varchar(255) DEFAULT NULL,
`policy3` varchar(255) DEFAULT NULL,
`policy4` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=latin1

最佳答案

您也可以为此目的使用dual 表:

INSERT INTO `policy` (`policy1`, `policy2`, `policy3`, `policy4`)
SELECT 'F', 'F', 'F', 'F' -- no parentheses!
FROM dual
WHERE NOT EXISTS (SELECT * FROM `policy`) ;

dual 是一个单行的内置表格,专为此类目的而设计。命名和创意来源于Oracle数据库。

关于mysql - 只在表为空时插入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55808746/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com