1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
|
CREATE PROCEDURE querySupplier(@supplyNo CHAR(8)) AS BEGIN DECLARE @supplyName VARCHAR(100), @totalMoney DECIMAL(18, 2), @purchaseNo CHAR(20), @productNo CHAR(20), @quantity DECIMAL(10, 2), @unitPrice DECIMAL(10, 2), @productName VARCHAR(100)
SELECT @supplyName = supplyName FROM Supplier WHERE supplyNo = @supplyNo
SELECT @totalMoney = ISNULL(SUM(money), 0) FROM Purchase WHERE supplyNo = @supplyNo
PRINT '============================================================' PRINT '供货商名称:' + @supplyName + ' 供货总金额:' + CAST(@totalMoney AS VARCHAR) PRINT '============================================================' PRINT '采购单编号 商品名称 数量 单价' PRINT '------------------------------------------------------------' DECLARE cur CURSOR FOR SELECT purchaseNo, productNo, quantity, unitPrice FROM Purchase_detailed WHERE purchaseNo IN ( SELECT purchaseNo FROM Purchase WHERE supplyNo = @supplyNo )
OPEN cur FETCH NEXT FROM cur INTO @purchaseNo, @productNo, @quantity, @unitPrice
WHILE @@FETCH_STATUS = 0 BEGIN SELECT @productName = productName FROM Product WHERE productId = @productNo
PRINT @purchaseNo + ' ' + @productName + ' ' + CAST(@quantity AS VARCHAR) + ' ' + CAST(@unitPrice AS VARCHAR)
FETCH NEXT FROM cur INTO @purchaseNo, @productNo, @quantity, @unitPrice END
CLOSE cur DEALLOCATE cur
PRINT '------------------------------------------------------------' END
|