表idi(假设商品购买表),字段id,name,num
表uk(假设商品的库存表),字段iid,kucun(对应的值1,1,10)假如idi表中插入一个id为1,name为"手机",num为一个随机数(这个值不固定)的sql语句时,先检测下uk表中iid为1且kucun字段的值,如果这个值>=idi表中num要插入的那个随机数时 才允许插入,同时kucun减去这个随机数(就是客户在购买某个商品时,下单时,先检测下该商品库存个数是否够客户要下的单子(目的是防止商品库存出现负数),如果够了就允许下单,同时库存数减去客户的下单数)
表uk(假设商品的库存表),字段iid,kucun(对应的值1,1,10)假如idi表中插入一个id为1,name为"手机",num为一个随机数(这个值不固定)的sql语句时,先检测下uk表中iid为1且kucun字段的值,如果这个值>=idi表中num要插入的那个随机数时 才允许插入,同时kucun减去这个随机数(就是客户在购买某个商品时,下单时,先检测下该商品库存个数是否够客户要下的单子(目的是防止商品库存出现负数),如果够了就允许下单,同时库存数减去客户的下单数)
解决方案 »
- 连接数据库oracle怎样变成连接mysql
- 怎么监控一个网站的后台postgreSQL
- 求一sql!
- 請幫忙!delphi連結MySql提示“DBX Error: Invalid Precision.”
- 同时UPDATA多个表的问题.并且只使用一次UPDATA,请问怎么写这个语句,并且还分二种情况, 请高手指教??
- ERROR 1146: Table 'mydb.tb_config' doesn't exist
- 各位老大,WINDOWS版的MYSQL如何修改最大连接数?
- POSTGRESQL数据库,linux下,同事的机器上装了个数据库a,我如果可以把这个数据库移植到我的 linux下?
- 高分求教……?
- mysql存储过程
- MySQL查询语句怎么写?
- MySQL Insert 效率问题请教
on idi
for each row
begin
set @x=(select kucun from uk where iid=new.id);
if new.num<=@x
then update uk set kucun=kucun-new.num where iid=new.id;
end if;
end;这个触发器能保证插入时库存中的数量会相应减少,但是不能阻止插入的进行,我还在想该怎样做