建立一个触发器,完成在删除仓库记录的同时,也删除相应的职工记录。
我写的是:CREATE TRIGGER w_del_trigger
ON 仓库 FOR DELETE
AS
DELETE 职工
WHERE 职工号 IN (SELECT 职工号 FROM deleted)
基于产品表(产品号,产品名,单价,库存量)建立一个存储过程,完成修改给定产品单价的功能。给定某个产品,如果该产品的库存量超过500,则单价降低5%,否则不降价。
我写的是:create procedure ch_price;1
(@wh_no char(4))
AS
UPDATE 产品
SET 单价=单价*0.95 WHERE 产品号=@wh_no
IF (SELECT * FROM 产品
WHERE 库存量>500)
RETURN 0
ELSE
RETURN -1我是初学者 希望得到一些帮助 谢谢
我写的是:CREATE TRIGGER w_del_trigger
ON 仓库 FOR DELETE
AS
DELETE 职工
WHERE 职工号 IN (SELECT 职工号 FROM deleted)
基于产品表(产品号,产品名,单价,库存量)建立一个存储过程,完成修改给定产品单价的功能。给定某个产品,如果该产品的库存量超过500,则单价降低5%,否则不降价。
我写的是:create procedure ch_price;1
(@wh_no char(4))
AS
UPDATE 产品
SET 单价=单价*0.95 WHERE 产品号=@wh_no
IF (SELECT * FROM 产品
WHERE 库存量>500)
RETURN 0
ELSE
RETURN -1我是初学者 希望得到一些帮助 谢谢
(@wh_no char(4))
AS
begin
UPDATE 产品
SET 单价=单价*0.95 WHERE 产品号=@wh_no and 库存量>500
end
(@wh_no char(4))
AS
begin
UPDATE 产品
SET 单价=单价*0.95 WHERE 产品号=@wh_no and 库存量>500
end
if object_id('产品','U') is not null
drop table 产品
go
create table 产品
(
产品号 char(4),
名称 varchar(10),
单价 numeric(18,2),
库存量 int
)
go
insert into 产品
select '1','洗衣粉',1,600 union all
select '2','衣服',2,490
go
if object_id('ch_price','P') is not null
drop procedure ch_price
go
create procedure ch_price
@wh_no char(4),
@result int output --定义返回值
as
update 产品 set 单价=单价*0.95 where 产品号=@wh_no and 库存量>500
if @@rowcount>0
set @result=0
else
set @result=-1
go
--调用存储过程
declare @result int
exec ch_price '1',@result output --获取返回值
print @result