1つの列(ステータス)があり、値は待機中またはon_processまたはfinishedになります。velueが待機しているかどうかを確認するので、最大数を取得し(たとえば、waiting1、waiting2->したがって、最大値はwaiting2)、最大値を+1して、次のステータスはwaiting3になります。
col_status
waiting1waiting2on_process
終了
......。
_
_
これは私のコードです:
create PROCEDURE SP_queue
AS
BEGIN
DECLARE @NEWID VARCHAR(5);
select @NEWID = max(convert(int,SUBSTRING(status, 8, 2))) FROM myTable
SELECT 'Waiting'+convert(VARCHAR, @NEWID+1)
END
ただし、列に別の値(on_processなど)がある場合はエラーが発生します。ifステートメントを使用してチェックする方法、値が待機中の場合は最大値を取得する方法、値がon_processの場合は誰でも確認できます。 /終了してから何もしません。
ありがとう..