对存储过程进行加密和解密
2016-02-23 17:23
288 查看
用于加密的存储过程 (sp_EncryptObject) :
存储过程(sp_EncryptObject)加密的方法是在存储过程,函数,视图的“As”位置前加上“with encryption”;如果是触发器,就在“for”位置前加“with encryption”。
如果触发器是{ AFTER | INSTEAD OF} 需要修改下面代码"For"位置:
ALTER PROCEDURE [dbo].[TransProcEmployee]
(@员工编号 [VarChar](50),
@员工姓名 [VarChar](50))
With Encryption AS
BEGIN
INSERT INTO [db_Tome2].[dbo].[员工信息表] ([员工编号],[员工姓名]) VALUES (@员工编号,@员工姓名)
END
存储过程(sp_EncryptObject)加密的方法是在存储过程,函数,视图的“As”位置前加上“with encryption”;如果是触发器,就在“for”位置前加“with encryption”。
如果触发器是{ AFTER | INSTEAD OF} 需要修改下面代码"For"位置:
if objectproperty(object_id(@Object),'ExecIsAfterTrigger')=0 set @Replace='As' ; else set @Replace='For ';
存储过程完成代码:
ALTER PROCEDURE [dbo].[TransProcEmployee]
(@员工编号 [VarChar](50),
@员工姓名 [VarChar](50))
With Encryption AS
BEGIN
INSERT INTO [db_Tome2].[dbo].[员工信息表] ([员工编号],[员工姓名]) VALUES (@员工编号,@员工姓名)
END
如果SQL Server 2012,请修改下面两个位置的代码。在SQL Server 2012,建议在使用throw来代替raiserror。
相关文章推荐
- Map集合中value()方法与keySet()、entrySet()区别 《转》
- Bilibili/ijkPlayer
- android中ImageView、ImageButton、Button之间的区别
- jar包详解
- windows用户设置ora_db权限
- android 依赖包间传递数据
- spring aop注解的三种方式
- 深入浅出 React Native:使用 JavaScript 构建原生应用
- 自定义属性--索引值
- Unity3D学习笔记(十三)导出游戏
- ACM数论之旅17---反演定理 第一回 二项式反演(神说要有光 于是就有了光(´・ω・`))
- javaScript学习笔记(与c++等不同之处)
- 各种SQL语句
- 安全性测试之防范 DDoS 攻击
- JDK1.8之Lambda
- Java Reflection(二):Classes
- web Service入门实例
- fork之pid理解
- highcharts在导出时如何自定义图表的表头
- highcharts click事件获取数据传给datagrid ,动态加载数据