我创建了这两个表:
CREATE TABLE oferta
(
id_agentie INT,
id_spatiu INT,
vanzare CHAR(1),
pret INT,
moneda CHAR(5),
CONSTRAINT pk_oferta PRIMARY KEY(id_agentie, id_spatiu)
);
CREATE TABLE Spatiu
(
id_spatiu INT PRIMARY KEY,
adresa VARCHAR(45),
zona INT,
suprafata INT,
id_tip INT
);
我需要创建一个触发器,每当我插入一个新的'pret'时,如果'pret'的值小于2*'suprafata',那么我想将'pret'的值更改为2*'suprafata','moneda'的值更改为'eur'。
我试过了,但还是做不成。
编辑:我正在使用mysql。很抱歉没有具体说明。
1条答案
按热度按时间6l7fqoea1#
下面是一个代码片段,应该满足您的需要。
触发器将在上的每个插入之前运行
oferta
. 它将首先运行一个查询来恢复suprafata
在表的相应记录中spatiu
,然后将其与pret
传递给插入顺序的值。什么时候pret
(严格地说)少于两次suprafata
,触发器修改pret
以及moneda
.