表建立ID

來源:互聯網
上載者:User
/*
---Description: Generate r_id  for reply table
---Author  : zhongcanjun
---Date : 2007-06-13
*/
CREATE PROCEDURE [dbo].[sp_get_code_reply]
 @reply_id CHAR(9) OUTPUT
AS
/*
 Declaraton of Variables Block
*/
DECLARE
 @v_last_cd CHAR(7),
 @v_prefix CHAR(2),
 @v_record INTEGER
/*
 Main Block
*/
 SELECT @v_record = COUNT(*)
 FROM  code_reply
 IF ( @v_record <= 0 ) BEGIN
   INSERT INTO code_reply ( last_cd, last_upd_date )
   VALUES ( 1, CONVERT(VARCHAR,CURRENT_TIMESTAMP,121) )
   SELECT  @v_last_cd = '0000001'
   END
 ELSE BEGIN
   SELECT @v_last_cd = last_cd
   FROM  code_reply
   IF ( @v_last_cd = '9999999' ) BEGIN
     UPDATE code_reply
     SET  last_cd = 1,
      last_upd_date = CONVERT(VARCHAR,CURRENT_TIMESTAMP,121)
   END
   ELSE  BEGIN
     UPDATE code_reply
     SET  last_cd = last_cd + 1,
      last_upd_date = CONVERT(VARCHAR,CURRENT_TIMESTAMP,121)
   END
   SELECT @v_last_cd = last_cd
   FROM  code_reply
   WHILE LEN( @v_last_cd ) <= 6 BEGIN
     SELECT @v_last_cd = '0' + @v_last_cd
   END
 END
 SELECT @v_prefix = SUBSTRING( CONVERT( CHAR(8), GETDATE(), 11 ), 1, 2 )
 
/*
 Return value
*/
 SELECT  @reply_id = @v_prefix + @v_last_cd
GO

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.