内容发布更新时间 : 2024/11/8 4:42:37星期一 下面是文章的全部内容请认真阅读。
AS
SELECT COST.*,物码,消耗数量,单价 FROM COST,MATERIALPRICE
where COST.单据号=MATERIALPRICE.单据号;
SELECT 单据号,物码 FROM COST_PRICE WHERE 物码='wm002';
SELECT 单据号,单价 FROM COST_PRICE
WHERE 单据号='ZY2016001'and 物码='wm001'; GO
CREATE VIEW YUSUAN AS
SELECT 单据号,预算单位,井号,预算金额,预算人,预算日期 FROM COST;
INSERT
INTO YUSUAN
VALUES('zy2016008','112202002','y005',10000,'张三', '2016-07-02');
ROLLBACK */
实验六
BEGINTRANSACTION
INSERTINTO COST VALUES('zy2016006','112202002','y005',10000,'张三','07-01-2016','07-04-2016','07-25-2016','作业公司作业一队','堵漏
',7000,2500,1000,1400,11900,'李四','07-26-2016',11900,'王五','07-28-2016'); IF@@ERROR<>0 BEGIN
PRINT'第一条插入出错' ROLLBACK END ELSE BEGIN
PRINT'第一条插入成功' COMMITTRANSACTION END
BEGINTRANSACTION
insertinto MATERIALPRICE values('zy2016006','wm001',200,10); IF@@ERROR<>0 BEGIN
PRINT'第二条插入出错' ROLLBACK END ELSE BEGIN
PRINT'第二条插入成功' COMMITTRANSACTION END
BEGINTRANSACTION
insertinto MATERIALPRICE values('zy2016006','wm002',200,10); IF@@ERROR<>0 BEGIN
PRINT'第三条插入出错' ROLLBACK END ELSE BEGIN
PRINT'第三条插入成功' COMMITTRANSACTION END
BEGINTRANSACTION
insertinto MATERIALPRICE values('zy2016006','wm003',200,10); IF@@ERROR<>0 BEGIN
PRINT'第四条插入出错' ROLLBACK END ELSE BEGIN
PRINT'第四条插入成功' COMMITTRANSACTION END
BEGINTRANSACTION
insertinto MATERIALPRICE values('zy2016006','wm004',100,10); IF@@ERROR<>0 BEGIN
PRINT'第五条插入出错' ROLLBACK END ELSE BEGIN
PRINT'第五条插入成功' COMMITTRANSACTION END
BEGINTRANSACTION
DECLARE COST_CUR SCROLLCURSOR FORSELECT* FROM COST;
OPEN COST_CUR;
DECLARE @单据号 VARCHAR(20) DECLARE @预算单位 VARCHAR(20) DECLARE @井号 VARCHAR(20) DECLARE @预算金额 FLOAT DECLARE @预算人 VARCHAR(20) DECLARE @预算日期 DATE DECLARE @开工日期 DATE DECLARE @完工日期 DATE
DECLARE @施工单位 VARCHAR(30) DECLARE @施工内容 VARCHAR(50) DECLARE @材料费 FLOAT DECLARE @人工费 FLOAT DECLARE @设备费 FLOAT DECLARE @其他费用 FLOAT DECLARE @结算金额 FLOAT DECLARE @结算人 VARCHAR(20) DECLARE @结算日期 DATE DECLARE @入账金额 FLOAT DECLARE @入账人 VARCHAR(20) DECLARE @入账日期 DATE
PRINT'单据号 '+'预算单位 '+'井号 '+'预算金额 '+'预算人'+' 预算日期' +' 开工日期'+' 完工日期'+' 施工单位'+'施工内容'+'材料费'+' 人工费' +' 设备费'+' 其它费用'+' 结算金额'+' 结算人'+'结算日期'+' 入账金额' +' 入账人'+' 入账日期'
FETCHFIRSTFROM COST_CRU
INTO @单据号,@预算单位,@井号,@预算金额,@预算人,@预算日期, @开工日期,@完工日期,@施工单位,@施工内容,@材料费,@人工费,
@设备费,@其他费用,@结算金额,@结算人,@结算日期,@入账金额,@入账人,@入账日期
WHILE(@@FETCH_STATUS=0) BEGIN
PRINT+@单据号+@预算单位 +@井号 +@预算金额 +' '+@预算人+' '+@预算日期 +' '+@开工日期 +' '+@完工日期 +' '+@施工单位 +' '+@施工内容 +@材料费+@人工费 +@设备费
+@其他费用 +@结算金额 +' '+@结算人 +' '+@结算日期 +@入账金额 +' '+@入账人 +@入账日期
FETCHNEXTFROM COST_CRU INTO
@单据号,@预算单位,@井号,@预算金额,@预算人,@预算日期,
@开工日期,@完工日期,@施工单位,@施工内容,@材料费,@人工费,
@设备费,@其他费用,@结算金额,@结算人,@结算日期,@入账金额,@入账人,@入账日期 END ;
ifOBJECT_ID('YUNXING_SITU','p')isnotnull dropprocedure YUNXING_SITU; go
CREATEPROCEDURE YUNXING_SITU
@DANWEIDAIMA VARCHAR(30),@STARTTIME DATE,@ENDTIME DATE AS
DECLARE @DANWEIMING VARCHAR(30);
DECLARE @YSMONEY money,@JSMONEY money,@RZMONEY money, @NOJSMONEY money,@NORUZHANGMONEY money;
SELECT @DANWEIMING='单位名称' FROM UNITNO
WHERE @DANWEIDAIMA='单位代码' SET
@YSMONEY=(SELECTSUM(预算金额) FROM COST
WHERE 预算单位 LIKE @DANWEIDAIMA+'%'AND
预算日期 BETWEEN @STARTTIME AND @ENDTIME and 预算金额 isnotnull) SET
@JSMONEY=(SELECTSUM(结算金额)FROM COST WHERE 预算单位 LIKE @DANWEIDAIMA+'%'AND