2014年12月16日 星期二

隨機20文件字串

-- 大寫英文字
SELECT CHAR(ROUND(RAND() * 25 + 65,0))
-- 小寫英文字
SELECT CHAR(ROUND(RAND() * 25 + 97,0))
-- 特殊符號
SELECT CHAR(ROUND(RAND() * 13 + 33,0))
-- 數字
SELECT CHAR(ROUND(RAND() * 9 + 48,0))

-- 網路上找到的,隨機20文件字串,生測試資料好用

BEGIN
   DECLARE @str varchar(20) = ''
   DECLARE @length int = 20
   DECLARE @c int = 0
   DECLARE @chars varchar(100) = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890'
   WHILE (@c < @length)
   BEGIN
       DECLARE @n int = RAND() * 100
       IF (@n <= LEN(@chars))
       BEGIN
          SET @str = @str + SUBSTRING(@chars, @n, 1)
          SET @c = @c + 1
       END
   END
   SELECT @str
END


-- 參考

-- <菜逼巴工程師的筆記本>

沒有留言:

張貼留言