SQL加密数据
王燕杰
在网络上发送数据都会发生一些严重的安全问题,网络最大的担忧在于有人可以捕获数据,sqlserver支持采用证书来加密
1.创建证书
create master key encryption by
password = 'administrator123'
--用密码admini--
create certificate c1
encryption by password = 'administrator123'
with subject = 'c1 certificate',
start_date='03/08/2009',
expiry_date = '02/08/2020';
go
2.创建测试表,name字段为要加密的列,数据类型为varbinary
注意:加密的类型必须是varbinary,因为加密的数据是类型varbinary
create table testB(id int identity(1,1),name varbinary(5000))
3.使用加密函数向测试表中写入一条测试数据
insert into testB(name)
select encryptbycert(cert_id('c1'),'test')
4.利用下面的语句来提取加密数据
select * from testB
5.利用以下语句来解密数据
select id ,cast(decryptbycert(cert_id('c1'),name ,
N'administrator123')as varchar(20)) from testB
完成了
相关文档:
练手,每天查看别人的东西,不如自己总结好
1:replace 函数
第一个参数你的字符串,第二个参数你想替换的部分,第三个参数你要替换成什么
select replace('lihan','a','b')
&nb ......
--------------------------------------------------------------------------
-- Author : 原著:不详 改编:htl258(Tony)
-- Subject: 完善SQL农历转换函数(显示中文格式,加入润月的显示)
-------------------------------------------------------------------------- ......
数据类型:
一、 整数数据类型
INT(INTEGER) 4
SMALLINT 2
TINYINT 1
BIGINT & ......
SQL字符串函数http://www.cnblogs.com/virusswb/archive/2008/09/10/1288576.html
select语句中只能使用sql函数对字段进行操作(链接sql server),
select 字段1 from 表1 where 字段1.IndexOf("云")=1;
这条语句不对的原因是indexof()函数不是sql函数,改成sql对应的函数就可以了。
left()是sql函数。
select 字 ......
Student(S#,Sname,Sage,Ssex) 学生表
Course(C#,Cname,T#) 课程表
SC(S#,C#,score) 成绩表
Teacher(T#,Tname) 教师表
问题:
1、查询“001”课程比“002”课程成绩高的所有学生的学号;
select a.S# from (select s#,score from SC where C#='001') a,(select s#,score
fr ......