SQL 语句高手请进。 SORRY小弟 只有这45分了。
PBVC 2001-12-18 09:32:37 以下是一个"MRP需求计算"存储过程中的一段 , 你能看懂他做的是什么事情吗?
我最多只能提供这么多资料了(应该够了),希望你能看懂 HE HE ~~ 。昨晚害得我加班到两点 555~~~
DECLARE @PART_NO VARCHAR(15)
@OldPartNo VARCHAR(15)
re_Start:
DECLARE PART_CURSOR CURSOR FOR
SELECT PART_NO
FROM MRPLIST
OPEN PART_CURSOR
FETCH NEXT FROM PART_CURSOR INTO
@PART_NO
IF @@FETCH_STATUS <> 0 BEGIN
CLOSE PART_CURSOR
DEALLOCATE PART_CURSOR
GOTO Label_End
END
SELECT @OldPartNo = @PART_NO
FETCH NEXT FROM PART_CURSOR INTO
@PART_NO
WHILE (@@FETCH_STATUS = 0) BEGIN
--BOMLIST 用于存放产品 BOM 资料,格式和大部份 MRP 软件一样。
IF EXISTS(SELECT * FROM BOMLIST WHERE FATHER_NO = @PART_NO AND SON_NO = @OldPartNo) BEGIN
SELECT @OldPartNo = @PART_NO
END
FETCH NEXT FROM PART_CURSOR INTO
@PART_NO
END
CLOSE PART_CURSOR
DEALLOCATE PART_CURSOR
-- ...............
-- 得到 @OldPartNo 然后执行其它语句
GOTO re_Start
Label_End: