易截截图软件、单文件、免安装、纯绿色、仅160KB

解密SQL SERVER 2005加密存储过程,函数


在SQL SERVER 2005中必须用专用管理连接才可以查看过程过程中用到的表
EG:sqlcmd -A
1>use test
2>go
1>sp_decrypt 'p_testa'
2>go
Text
----------------------
Create procedure P_testa
with encryption
as
select * from test
 
create PROCEDURE [dbo].[sp_decrypt]
(@procedure sysname = NULL)  
AS  
SET NOCOUNT ON  
BEGIN
DECLARE @intProcSpace bigint, @t bigint, @maxColID smallint,@intEncrypted  
tinyint,@procNameLength int  
select @maxColID = max(subobjid),@intEncrypted = imageval from  
sys.sysobjvalues WHERE objid = object_id(@procedure)  
GROUP BY imageval  
select @procNameLength = datalength(@procedure) + 29  
DECLARE @real_01 nvarchar(max)  
DECLARE @fake_01 nvarchar(max)  
DECLARE @fake_encrypt_01 nvarchar(max)  
DECLARE @real_decrypt_01 nvarchar(max),@real_decrypt_01a nvarchar(max)  
declare @objtype varchar(2),@ParentName nvarchar(max)  
select @real_decrypt_01a = ''  
--提取对象的类型如是存储过程还是函数,如果是触发器,还要得到其父对象的名称  
select @objtype=type,@parentname=object_name(parent_object_id)  
from sys.objects where [object_id]=object_id(@procedure)  
-- 从sys.sysobjvalues里提出加密的imageval记录  
SET @real_01=(SELECT top 1 imageval from sys.sysobjvalues WHERE objid =  
object_id(@procedure) and valclass = 1 order by subobjid)  
--创建一个临时表  
create table #output ( [ident] [int] IDENTITY (1, 1) NOT NULL ,  
[real_decrypt] NVARCHAR(MAX) )  
--开始一个事务,稍后回滚  
BEGIN TRAN  
--更改原始的存储过程,用短横线替换  
if @objtype='P'  
SET @fake_01='ALTER PROCEDURE '+ @procedure +' WITH ENCRYPTION AS  
'+REPLICATE('-', 40003 - @procNameLength)  
else if @objtype='FN'  
SET @fake_01


相关文档:

同一表多字段同时重复记录的SQL查询及处理数

同一表多字段同时重复记录的SQL查询及处理数
比如现在有一人员表 (表名:peosons)
若想将姓名、身份证号、住址这三个字段完全相同的记录查询出来
select p1.* from persons p1,persons p2 where p1.idp2.id and p1.cardid = p2.cardid and p1.pname = p2.pname and p1.address ......

windows 2003下安装 sql server 2000的方法

    我安装的是sql server 2000四合一版本,正常途径直接安装是装不上的,要打什么SP3补丁,不要理它,打开安装包,里边有个MSDE目录,执行setup.exe,安装很顺利,装完之后是没有反应的,重启计算机,然后能看到sql server服务已经启动,这样,就可以正常安装了,执行安装包根目录下的安装程序,按提示一步 ......

更改SQL 2005的登陆方式

如果你的身份验证方式为Windows集成身份验证更改为混合方式的身份验证,需要在SQL Server Configuration Management中,把TCP/IP的活动启用,也就是第一个选择的地方,选择启用。并且使用集成身份验证方式登录后,在数据库服务器上选择属性,把安全性下的WINDOWS模式改为SQL与WINDOWS模式 ......

深度对比Oracle与SQL Server – 第一部分



作系统的支持

本和发行版

例、数据库和表空间

例名和SID

统数据库和系统表空间
 
本译文采用知识共享署
名-非商业性使用-相同方式共享 3.0 Unported许可协议
发布,转载请保留此信息
译者:马齿苋 | 链接:http://www.dbabeta.com/2010/oracle-sql-server-comparison-i.html
作者:S ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号