mysql字段加密存储过程_数据库:加密存储过程

58e813296020a2f09268a3b86fb4a522.png

如何简单的创建一个加密存储过程:

create proc Test

(参数列表)

with encription

as

主体

go

为了演示,现在我们创建一个具备各种参数类型的存储过程作为测试:

create proc Test

(

@x int = 3,

@s nvarchar(20),

@y int output

)

with encryption

as

select @x, @s

set @y = 5

return 1

go这个存储过程具备了输入参数,输出参数,返回值。

(关于返回值的题外话:返回值只能是 int 类型或者没有。默认情况下,系统存储过程都返回 0 表示调用成功,其他非零值表示失败。用户自定义的存储过程可以返回任意整数值)

现在调用一下这个存储过程试试:

declare @y int, @r int

exec @r = test 9, ’Hello’, @y output

select @y

select @r

再来看一下这个存储过程的注释:

SELECT c.id, c.text

FROM syscomments c INNER JOIN sysobjects o

ON c.id = o.id

WHERE o.name = ’Test’可以发现是一些加密了之后的乱码。

如何得到加密存储过程的参数列表信息呢?有两个办法:

方法A:

select * from information_schema.parameters

where specific_name = ’Test’这个方法返回的结果集里没有包含返回值的信息。

方法B:

sp_procedure_params_rowset ’Test’, 1, ’dbo’这个语句返回的比上面那个多一行返回值信息。

注意到他们返回的其他列信息也不同。比如 PROCEDURE_NAME(存储过程名),方法B返回的是:

Test;1

后面这个 1 表示 Group Number.

2829f2ca24f0d0090cbba57f30759f23.png

数据库:加密存储过程.doc

下载Word文档到电脑,方便收藏和打印[全文共712字]

编辑推荐:

8b95f2eb3d3f7ce4dc3bf1178c74941e.png

8b95f2eb3d3f7ce4dc3bf1178c74941e.png

8b95f2eb3d3f7ce4dc3bf1178c74941e.png

下载Word文档

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值