You are on page 1of 2

To mt hm m ho vi T-SQL Trong SQL h tr lp trnh vi T-SQL, bn c th to cc hm x l chui hoc nhng vn lin quan n chui. V y l v d v cch m ho mt chui no (v d m ho password).

). Thc cht ca hm ny l thay i chui nhp vo bng chui khc theo... Trong SQL h tr lp trnh vi T-SQL, bn c th to cc hm x l chui hoc nhng vn lin quan n chui. V y l v d v cch m ho mt chui no (v d m ho password). Thc cht ca hm ny l thay i chui nhp vo bng chui khc theo mt quy lut no . V quy lut y l k t v tr l s tng ln 20*number, k t v tr chn s gim i 20*number. 1. Hm m ha k t view plainprint? 1. 2. CREATE FUNCTION fuMaHoaString 3. (@strInput nvarchar(200), 4. @dt smallint=-1) 5. RETURNS nvarchar(200) 6. AS 7. BEGIN 8. Declare @str nvarchar(200) 9. Declare @lenStr tinyint 10. Declare @i tinyint 11. Declare @k smallint 12. Set @lenStr = Len(@strInput) 13. Set @str = '' 14. Set @i = 1 15. If (@dt = 0) 16. Set @dt = -1 17. Set @k = @dt / Abs(@dt) 18. While (@i <= @lenStr) 19. Begin 20. Set @str = @str + Char((Ascii(SubString(@strInput, @i, 1))+@k*20)) 21. Set @k = -@k 22. Set @i = @i + 1 23. End 24. Return @str 25. END 26. //trong hm trn ch cn 1 cu lnh l quyt nh, my cu cn li ch lm m m t ai m thi

V d: SELECT dbo.fuMaHoaString('abc123',1) S tr v 'uNwF' 2. Hm gii m hm m ha trn. Hm dch li cch m ho th cng tng t thi (c th vit ti SQL hoc ti chng trnh khc). Sau y l hm dch li chui: view plainprint? 1. CREATE FUNCTION fuGiaiMaKyTuDaMaHoa 2. (@strInput nvarchar(200), 3. @dt smallint=-1) 4. RETURNS nvarchar(200) 5. AS 6. BEGIN 7. Declare @str nvarchar(200) 8. Declare @lenStr tinyint 9. Declare @i tinyint 10. Declare @k smallint 11. Set @lenStr = Len(@strInput) 12. Set @str = '' 13. Set @i = 1 14. If (@dt = 0) 15. Set @dt = -1 16. Set @k = -@dt / Abs(@dt) 17. While (@i <= @lenStr) 18. Begin 19. Set @str = @str + Char((Ascii(SubString(@strInput, @i, 1))+@k*20)) 20. Set @k = -@k 21. Set @i = @i + 1 22. End 23. Return @str 24. END

V d: SELECT dbo.fuGiaiMaKyTuDaMaHoa(dbo.fuMaHoaString('abc123',1),1) S tr v abc123

You might also like