⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 oracle开发技巧-12.htm

📁 微软数据库开发梦工场多媒体教学-oracle篇.rar,是多媒体教学的
💻 HTM
字号:
<body bgcolor="#000000">
<p><font color="#FFFFFF"> <font color="#009900">ORACLE应用经验(4)-加密程序 </font><br>
  <br>
  </font></p>
<p><font color="#FFFFFF">-------------1. 加密程序数据库触发子scjmmm---------------------- 
  <br>
  REM 对GHXXB制立数据库触发子(当INSERT OR UPDATE GHXXB时触发) <br>
  drop trigger scjmmm; <br>
  create or replace trigger scjmmm <br>
  before insert or update of mm On ghxxb For each Row <br>
  Begin <br>
  :new.mm:=ENCRYPT(:new.mm,:NEW.GH,TO_CHAR(SYSDATE,'SS')); <br>
  End; <br>
  / <br>
  -------------2. 密码的加密程序ENCRYPT---------------------- <br>
  Create or Replace <br>
  Function ENCRYPT (Inpass In Varchar2,IN_GH In Varchar2,IN_SS In Varchar2) <br>
  Return Varchar2 Is <br>
  bcs varchar2(20); <br>
  bcs1 number; <br>
  cs number; <br>
  jg number; <br>
  m_gh VARCHAR2(4); <br>
  m_mm VARCHAR2(20); <br>
  Begin <br>
  m_gh:=IN_GH; <br>
  m_mm:=INPASS; <br>
  cs:=TO_NUMBER(IN_SS); <br>
  If cs&lt;=1 then cs:=77 ;end if; <br>
  bcs:=substr(to_char(ascii(substr(m_gh,1,1))),1,2); <br>
  If bcs&lt;'1' then bcs:='7' ;end if; <br>
  m_gh:=substr(m_gh,2); <br>
  Loop EXIT WHEN nvl(length(m_gh),0)=0 ; <br>
  bcs:=bcs||substr(to_char(ascii(substr(m_gh,1,1))),-1,1); <br>
  m_gh:=substr(m_gh,2); <br>
  End loop; <br>
  Loop EXIT WHEN nvl(length(m_mm),0)=0 ; <br>
  bcs:=bcs||substr(to_char(ascii(substr(m_mm,1,1))),-1,1); <br>
  m_mm:=substr(m_mm,2); <br>
  End loop; <br>
  bcs1:=to_number(bcs); <br>
  jg:=cs*bcs1; <br>
  Loop EXIT WHEN length(to_char(jg))&gt;13; <br>
  jg:=jg*cs ; <br>
  End loop; <br>
  RETURN(IN_SS||substr(to_char(jg),1,14)); <br>
  End; <br>
  / <br>
  grant execute on ENCRYPT to public; <br>
  <br>
  </font></p>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -