可以建立产生Field3 , Field4 的过程
在插入数据时取值
CREATE PRO_TEST
@FIELED2 INT,
@FIELED3 VARCHAR(2) OUTPUT,
@FLELED4 VARCHAR(3) OUTPUT
AS
IF EXLSTS(SELECT * FROM TABLE WHERE FIELED2=@FIELED2
SELECT @FIELED3=MAX(FILED3) FROM TABLE
ELSE
BEGIN
SELECT @FIELED3=MAX(FILED3) FROM TABLE
SET @FIELED3=RGHIT( '0'+ RTRIM(CAST(CAST(ISNULL(@FIELED3,'1') AS INT )+1,
VARCHAR(2))),2)
END SELECT @FIELED4=RGHIT( '00'+ RTRIM(CAST(CAST(ISNULL(MAX(FILED4),'1') AS INT )+1, VARCHAR(2))),3) FROM TABLE
也可以用触发气
在插入数据时取值
CREATE PRO_TEST
@FIELED2 INT,
@FIELED3 VARCHAR(2) OUTPUT,
@FLELED4 VARCHAR(3) OUTPUT
AS
IF EXLSTS(SELECT * FROM TABLE WHERE FIELED2=@FIELED2
SELECT @FIELED3=MAX(FILED3) FROM TABLE
ELSE
BEGIN
SELECT @FIELED3=MAX(FILED3) FROM TABLE
SET @FIELED3=RGHIT( '0'+ RTRIM(CAST(CAST(ISNULL(@FIELED3,'1') AS INT )+1,
VARCHAR(2))),2)
END SELECT @FIELED4=RGHIT( '00'+ RTRIM(CAST(CAST(ISNULL(MAX(FILED4),'1') AS INT )+1, VARCHAR(2))),3) FROM TABLE
也可以用触发气
这个有什么好的办法解决吗??