日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
SQLServer數(shù)據(jù)庫流水號(hào)的使用方法詳解

SQL Server數(shù)據(jù)庫流水號(hào)的使用方法是本文我們主要要介紹的內(nèi)容,這段時(shí)間開發(fā),又涉及到使用流水號(hào)功能。不同的條件,使用二種前綴。后面的流水號(hào)還是要流水的功能,要求再加上位數(shù)已經(jīng)有所變化了。為了解決此問題,只有添加另外一個(gè)自定義函數(shù)在SQL中。

改寫如下,可參考:

 
 
 
  1. udf_SeriesNumber  
  2. SET ANSI_NULLS ON  
  3. GO  
  4. SET QUOTED_IDENTIFIER ON  
  5. GO  
  6. CREATE FUNCTION [dbo].[udf_SeriesNumber]  
  7. (  
  8.     @Number NVARCHAR(12),  --原來的值  
  9.     @Digit INT --流水號(hào)的位數(shù)  
  10. )  
  11. RETURNS NVARCHAR(100)  
  12. AS  
  13. BEGIN  
  14.     DECLARE @ReturnValue NVARCHAR(100)  
  15.       
  16.     IF (@Number IS NULL)  
  17.     SET @ReturnValue = REPLICATE('0', @Digit - 1) + '1'  
  18.     ELSE  
  19.         BEGIN  
  20.             DECLARE @nbr NVARCHAR(6)   
  21.             SET @nbr = CONVERT(NVARCHAR,(CONVERT(INT, RIGHT(@Number, @Digit)) + 1))   
  22.             SET @nbr = REPLICATE('0', @Digit - LEN(@nbr)) + @nbr   
  23.             SET @ReturnValue = @nbr   
  24.         END  
  25.     RETURN @ReturnValue  
  26. END 

接下來,就可以實(shí)現(xiàn)會(huì)議室預(yù)的的會(huì)議流水號(hào)功能,也許以后又來一個(gè)流水號(hào)的,還是使用上面的自定義函數(shù)。有好幾個(gè)會(huì)議室,而第一個(gè)會(huì)議室是一個(gè)虛擬會(huì)議室,只能作為測試使用,其余的會(huì)議室全作為正式的會(huì)議室供預(yù)定。這些預(yù)定的出來的流水號(hào)需要區(qū)分,虛擬的會(huì)議流水號(hào)如下:#000001,#000002,#000003,...,#999999。而正式的會(huì)議流水號(hào),如:M000001,M000002,M000003,...,M999999。

下面的程序是產(chǎn)生流水號(hào)的實(shí)現(xiàn)功能:

 
 
 
  1. udf_GetMeetingNumber  
  2. SET ANSI_NULLS ON  
  3. GO  
  4. SET QUOTED_IDENTIFIER ON  
  5. GO  
  6. CREATE FUNCTION [dbo].[udf_GetMeetingNumber]  
  7. (      
  8.     @MeetingRoomId SMALLINT    
  9. )  
  10. RETURNS NVARCHAR(20)  
  11. AS  
  12. BEGIN  
  13. --宣告兩個(gè)變量,一個(gè)是流水號(hào)的前綴,初始化其值。另個(gè)是將保存最新的會(huì)議號(hào)碼。      
  14. DECLARE @Prefixion NVARCHAR(2) = 'M', @LastMeetingNumber NVARCHAR(20)  
  15. IF (@MeetingRoomId = 1)  
  16.     BEGIN  
  17. --如果是虛擬的會(huì)議室,去會(huì)議室預(yù)定的記錄表,找到最新的會(huì)議號(hào)碼          
  18. SELECT TOP 1 @LastMeetingNumber = [Meeting_Number] FROM [dbo].[MeetingRoomBooking] WHERE [MeetingRoomId] = @MeetingRoomId ORDER BY [MeetingRoomBookingId] DESC  
  19. --設(shè)定前綴          
  20. SET @Prefixion = '#' 
  21. END  
  22. ELSE  
  23. --如果是其它的會(huì)議室,找到最新的會(huì)議號(hào)碼  
  24. SELECT TOP 1 @LastMeetingNumber = [Meeting_Number] FROM [dbo].[MeetingRoomBooking] WHERE [MeetingRoomId] <> 1  ORDER BY [MeetingRoomBookingId] DESC  
  25. --結(jié)合上面的流水號(hào)產(chǎn)生的自定義函數(shù),與前綴組合,得到流水號(hào)。產(chǎn)生6位的流水號(hào)  
  26. RETURN @Prefixion + [dbo].[udf_SeriesNumber] (@LastMeetingNumber,6)  
  27. END  

關(guān)于SQL Server數(shù)據(jù)庫中流水號(hào)的使用方法就介紹到這里了,希望本次的介紹能夠?qū)δ兴斋@!


網(wǎng)站欄目:SQLServer數(shù)據(jù)庫流水號(hào)的使用方法詳解
URL分享:http://www.5511xx.com/article/dpshioe.html