通过T-SQL语句创建游标与实现数据库加解密功能


Posted in SQL Server onMarch 16, 2022

通过动态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

到此这篇关于通过T-SQL语句创建游标与实现数据库加解密功能的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

SQL Server 相关文章推荐
SQL Server——索引+基于单表的数据插入与简单查询【1】
Apr 05 SQL Server
在 SQL 语句中处理 NULL 值的方法
Jun 07 SQL Server
SQL Server作业失败:无法确定所有者是否有服务器访问权限的解决方法
Jun 30 SQL Server
SQLServer之常用函数总结详解
Aug 30 SQL Server
Windows环境下实现批量执行Sql文件
Oct 05 SQL Server
MySQL 中如何归档数据的实现方法
Mar 16 SQL Server
通过T-SQL语句创建游标与实现数据库加解密功能
Mar 16 SQL Server
SQL Server实现分页方法介绍
Mar 16 SQL Server
sql server偶发出现死锁的解决方法
Apr 10 SQL Server
SQL Server 中的事务介绍
May 20 SQL Server
SQL Server中的逻辑函数介绍
May 25 SQL Server
SQL bool盲注和时间盲注详解
Jul 23 SQL Server
MySQL 中如何归档数据的实现方法
SQL Server查询某个字段在哪些表中存在
Mar 03 #SQL Server
sql时间段切分实现每隔x分钟出一份高速门架车流量
Feb 28 #SQL Server
使用SQL实现车流量的计算的示例代码
Feb 28 #SQL Server
Sql Server之数据类型详解
Feb 28 #SQL Server
sql server 累计求和实现代码
Feb 28 #SQL Server
SQL SERVER触发器详解
Feb 24 #SQL Server
You might like
php生成随机字符串可指定纯数字、纯字母或者混合的
2014/04/18 PHP
php使用wordwrap格式化文本段落的方法
2015/03/17 PHP
CodeIgniter分页类pagination使用方法示例
2016/03/28 PHP
php实现与python进行socket通信的方法示例
2017/08/30 PHP
Mootools 1.2教程 Tooltips
2009/09/15 Javascript
jQuery Clone Bug解决代码
2010/12/22 Javascript
jquery中常用的函数和属性详细解析
2014/03/07 Javascript
node.js中的path.dirname方法使用说明
2014/12/09 Javascript
js实现有时间限制消失的图片方法
2015/02/27 Javascript
JS中append字符串包含onclick无效传递参数失败的解决方案
2016/12/26 Javascript
JS基于正则截取替换特定字符之间字符串操作示例
2017/02/03 Javascript
从零学习node.js之mysql数据库的操作(五)
2017/02/24 Javascript
微信小程序实现拖拽 image 触摸事件监听的实例
2017/08/17 Javascript
在vue项目创建的后初始化首次使用stylus安装方法分享
2018/01/25 Javascript
vue采用EventBus实现跨组件通信及注意事项小结
2018/06/14 Javascript
在vue中安装使用vux的教程详解
2018/09/16 Javascript
JS实现的进制转换,浮点数相加,数字判断操作示例
2019/11/09 Javascript
vue使用video插件vue-video-player的示例
2020/10/03 Javascript
python如何实现远程控制电脑(结合微信)
2015/12/21 Python
Python教程之全局变量用法
2016/06/27 Python
pycharm显示远程图片的实现
2019/11/04 Python
python3.8 微信发送服务器监控报警消息代码实现
2019/11/05 Python
Python更改pip镜像源的方法示例
2020/12/01 Python
pandas apply使用多列计算生成新的列实现示例
2021/02/24 Python
美国一家主打母婴用品的团购网站:zulily
2017/09/19 全球购物
Juicy Couture Beauty官方网站:香水和化妆品
2019/03/12 全球购物
欧洲最大的预定车位市场:JustPark
2020/01/06 全球购物
美国职棒大联盟的官方手套、球和头盔:Rawlings
2020/02/15 全球购物
致跳远运动员广播稿
2014/02/11 职场文书
感恩老师的演讲稿
2014/05/06 职场文书
学校节能减排倡议书
2014/05/16 职场文书
2014年有孩子的离婚协议书范本
2014/10/08 职场文书
公务员政审个人总结
2015/02/12 职场文书
花木兰观后感
2015/06/10 职场文书
nginx配置文件使用环境变量的操作方法
2021/06/02 Servers
Python采集股票数据并制作可视化柱状图
2022/04/04 Python