我有3个陈述,我想合并为一个;只是这样我才能学到这样做呢?
插入
INSERT INTO plants (name, latin_name, type, stock, price, flower_colour, foilage_colour, features, sun_exposure, soil_type, hardiness, competance, height, spread, description, flowering_season)
VALUES
(dandelion, `Taraxacum officinale`, weed, 12, 1.99, white, green, flower, `full sun`, alkaline, `annual hardy`, low, 12cm, 7cm, d, summer)
更新
UPDATE plants SET flower_colour='white', soil_type='clay', height='15cm', spread='4cm', description='Weed' AND price='£1.99'
删除
DELETE FROM plants WHERE name='dandelion' AND type='weed'
答案 0 :(得分:1)
我要问的第一个问题是“你为什么要这样做”?根据您的示例,您插入,更改然后删除条目。除非有隐藏的逻辑,例如触发器更新数据的其他元素,否则数据层的状态不会因执行这三个命令而发生变化。
此外,您的UPDATE语句在语法上不正确; AND
只能用于WHERE
或HAVING
子句,因此我认为您错误地忽略了这些内容。
实际上没有任何方法可以将插入,更新和删除组合到一个命令中。您通常可以将所有三个命令作为一个“脚本”从您正在使用的任何代码层发送,或者将这些SQL命令封装到存储过程中并执行该命令,但每个语句都会对基础数据执行非常不同的操作,这就是为什么它们'重新开始不同的命令。
答案 1 :(得分:1)
你不可能RDBMS。