oracle代码加密 wrap方法
wrap加密可对package_bodyprocedurefunction等进行加密,逆过程oracle未公开。[@more@]1、set nls lang=american_america.we8iso8859p12、wrap iname=C:LF_BLL.sql (只能对包体加密)PL/SQL Wrapper: Release 10.1.0.2.0- Production on 星期一 8月 30 00:33:18 2010Copyright (c) 1993, 2004, Oracle. All rights reserved.Processing C:LF_BLL.sql to LF_BLL.plb3、sqlplus =>sql> @c:lf_bll.plb;Package body created.完成!注:最后一步必须要在sqlplus下执行、在pl/sql下执行会出错:Package body created with compilation
Oracle 出错解析
积累一些Oracle的出错信息。[@more@]ORA-01008 not all variables bound :Cause: A SQL statement containing substitution variables was executed without all variables bound. All substitution variables must have a substituted value before the SQL statement is executed.sql使用了绑定变量,但是并没有给所有的绑定变量提供值。
竖表转横表(SQL SERVER)
竖表转横表(SQL SERVER)CREATE TABLE t(name VARCHAR(10), object VARCHAR(10), score INT)INSERT t SELECT 'a', 'EN' , 89UNION ALL SELECT 'a', 'CH' , 78UNION ALL SELECT 'a' , 'HO' , 99UNION ALL SELECT 'b' , 'EN' , 34UNION ALL SELECT 'b' , 'CH' , 88UNION ALL SELECT 'b' , 'HO' , 66[@more@]--object出现的不同值的个数是有限的那么使用SELECT name,EN=MAX(CASE WHEN object='EN' THEN score ELSE 0 END),CH=MAX(CASE WHEN object='CH' THEN score ELSE 0 END),HO=MAX(CASE WHEN object='HO' THEN score ELSE 0 END)FROM tG
竖表转横表(ORACLE)
竖表转横表(ORACLE)一般形式为将一个列为C!, C2, … CN的表,以C1, C2, … CX为基准,将CX+1, … CN的不同值改为列。一般化的语法: SELECT C1, C2, … CX,..... 另外,如果无基准的情况 比如.....见下文[@more@]一般形式为将一个列为C!, C2, … CN的表,以C1, C2, … CX为基准,将CX+1, … CN的不同值改为列。一般化的语法: SELECT C1, C2, … CX, MAX(DECODE(rn, 1, CX+1, NULL)) CX+1_1, … MAX(DECODE(rn, 1, CN, NULL)) CN_1 MAX(DECODE(rn, 2, CX+1, NULL)) CX+1_2, … MAX(DECODE(rn, 2, CN, NULL))