日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

通過T-SQL語句創建游標與實現數據庫加解密功能_MsSql

作者:.NET開發菜鳥 ? 更新時間: 2022-05-16 編程語言

通過動態SQL語句創建游標

DECLARE @sql varchar(100);
DECLARE @TableName varchar(32);
DECLARE @FieldName varchar(32);
DECLARE @PrimaryKey varchar(32);
DECLARE @DbValue varchar(32);
DECLARE @PKey int;
 
--賦值
set @TableName='Student';
SET @FieldName='Name';
SET @PrimaryKey='Id';
--創建動態游標
set @sql = 'declare rowCursor cursor For select '+@PrimaryKey+' as PKey , '+@FieldName
+' as DbValue from '+@TableName;
EXEC(@sql);  
--打開游標
OPEN rowCursor; 
--取值
fetch next from rowCursor into @PKey,@DbValue;
--循環
while(@@FETCH_STATUS=0)
    begin
        declare @ExecSql varchar(100);
        set @ExecSql='Update '+@TableName +' set '+@FieldName+' = 234324324';
        PRINT @ExecSql
        EXEC(@ExecSql)
        fetch next from rowCursor into @PKey,@DbValue;
    end 
--關閉游標
close rowCursor;
--釋放游標控件
deallocate rowCursor;

通過T-SQL語句實現數據庫加解密功能

CREATE TABLE [dbo].[Users]
(
    [U_nbr] NVARCHAR(20) NOT NULL PRIMARY KEY,
    [Pwd] nvarchar(MAX)
)
 
--加密
DECLARE @Pwd nvarchar(max)
SET @Pwd='測試加密'
--將varbinary類型轉換成varchar類型
INSERT INTO Users VALUES ('admin',sys.fn_varbintohexstr(ENCRYPTBYPASSPHRASE('32423sd',@Pwd)))
 
SELECT * FROM Users
 
DECLARE @pv varbinary(max)
DECLARE @str nvarchar(max)
DECLARE @sql nvarchar(max)
--將varchar類型轉換成varbinary類型
SELECT @str='0x0100000079e98bc2209c61038f9fc2eaaba24d6b8daad08fd98a41b6'
set @sql=N'set @p='+@str+N';'
    exec sp_executesql   @sql,
                         N'@p as varbinary(max) output',
                         @p=@pv output
PRINT @pv
--解密
SELECT CONVERT(VARCHAR(MAX),  DecryptByPassPhrase('123ASSDSS',@pv))
GO

原文鏈接:https://www.cnblogs.com/dotnet261010/p/10309216.html

欄目分類
最近更新