½âÃÜ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
Ïà¹ØÎĵµ£º
Èç¹ûÄãµÄÉí·ÝÑéÖ¤·½Ê½ÎªWindows¼¯³ÉÉí·ÝÑéÖ¤¸ü¸ÄΪ»ìºÏ·½Ê½µÄÉí·ÝÑéÖ¤£¬ÐèÒªÔÚSQL Server Configuration ManagementÖУ¬°ÑTCP/IPµÄ»î¶¯ÆôÓã¬Ò²¾ÍÊǵÚÒ»¸öÑ¡ÔñµÄµØ·½£¬Ñ¡ÔñÆôÓᣲ¢ÇÒʹÓü¯³ÉÉí·ÝÑéÖ¤·½Ê½µÇ¼ºó£¬ÔÚÊý¾Ý¿â·þÎñÆ÷ÉÏÑ¡ÔñÊôÐÔ£¬°Ñ°²È«ÐÔϵÄWINDOWSģʽ¸ÄΪSQLÓëWINDOWSģʽ ......
Êý¾Ý¿âÃæÊÔ³£ÓòâÊÔÌâ(SQL Server)
ÌâÄ¿1
¡¡¡¡ÎÊÌâÃèÊö:
¡¡¡¡Îª¹ÜÀí¸ÚλҵÎñÅàѵÐÅÏ¢£¬½¨Á¢3¸ö±í:
¡¡¡¡S (S#,SN,SD,SA) S#,SN,SD,SA ·Ö±ð´ú±íѧºÅ¡¢Ñ§Ô±ÐÕÃû¡¢ËùÊôµ¥Î»¡¢Ñ§Ô±ÄêÁä
¡¡¡¡C (C#,CN ) C#,CN ·Ö±ð´ú±í¿Î³Ì±àºÅ¡¢¿Î³ÌÃû³Æ
¡¡¡¡SC ( S#,C#,G ) S#,C#,G ·Ö±ð´ú±íѧºÅ¡¢ËùÑ¡Ð޵Ŀγ̱àºÅ¡¢Ñ§Ï°³É¼¨
¡¡¡¡1. Ê¹Ó ......
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 ......
֮ǰΪÁË·½±ã²Ù×÷¾ÍÔÚSql ServerµÄÆóÒµ¹ÜÀíÆ÷Àï×¢²áÁËÔ¶³Ì·þÎñÆ÷£¬µ«ÊÇǰһ¶Îʱ¼äÔÚÔ¶³Ì·þÎñÆ÷ÉÏÐÞ¸ÄÁ˸ÃÊý¾Ý¿âµÄÃÜÂ룬ÿ´Îµã»÷¸Ã×¢²á·þÎñÆ÷ϵͳҪµÈºÜ³¤Ê±¼ä£¬ÏóËÀ»úÒ»Ñù£»ÐÞ¸ÄÁ¬½ÓÊôÐÔÒ²Ð޸IJ»ÁË£¬µã»÷ºóҲûÓз´Ó¦£¬ÓÚÊǾÍÏëɾ³ýÖØÐÂ×¢²á£¬¼ÈÈ»ÎÞ·¨ÔÚ¹ÜÀíÆ÷Àïɾ³ý£¬¾ÍÏë´Ó×¢²á±íÀïɾ³ý£¬ÕÒÁ˺þÃÖÕÓÚÕÒµ½ÁË£¬¶ÔÓ¦µÄsql ......