2、可以通过调整库存拉动策略,把上游库存的拉动频率降低,把下游库存的拉动频率提高,从而达到数据不会负数。
3、可以通过增加上游库存的补货次数和补货量,减少下游库存的补货次数和补货量,从而达到调平负库存的目的。
这个问题用触发器解决比较好,用check 只能设定字段不为负数,但是要变为0就难了。用check的话如下:
alter table 表名
add constraint 约束名 check (字段>0)
用触发器的话
create trigger a_num
on 表名 instead of insert
as
begin
declare @列1 数据类型1,@列2 数据类型2,列3 数据类型3...
select @列1 = 列1,@列2=列2,@列3 = 列3... from inserted
if @列1<0
set @列1 = 0
else set @列1 =@列1
insert into 表名(列1,列2,列3...) values (@列1,@列2,@列3...)
end
这里我假设你列是要大于等于0,小于0的时候自动变为0的
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)