select distinct c.NUMTREENODE,c.NUMNODE,c.STRFUNCTION,c.STRURL,c.STRTYPE from BARCODE.ECSM_SFIS_SYS_FUNC c
    
start with c.NUMTREENODE in (
        SELECT sf.NUMTREENODE 
          FROM ECSM_SFIS_SYS_ROLE_FUNC rf, ECSM_SFIS_SYS_ROLE sr, ECSM_SFIS_SYS_FUNC sf, ECSM_SFIS_SYS_EMP se, ECSM_SFIS_SYS_ROLE_EMP re 
          WHERE rf.ROLE_INDEX = sr.NUMINDEX and rf.FUNC_INDEX= sf.NUMINDEX and re.EMP_INDEX = se.NUMINDEX 
        and re.ROLE_INDEX = sr.NUMINDEX and sf.STRTYPE ='Y' and (se.STRUSERNAME = 'guest' or se.STRUSERNAME = #username# ) 
    )
    connect by prior c.numnode = c.numtreenode
CREATE TABLE BARCODE.ECSM_SFIS_SYS_FUNC
(
  NUMINDEX       INTEGER                        NOT NULL,
  NUMTREENODE    NUMBER                         NOT NULL,
  NUMNODE        NUMBER                         NOT NULL,
  STRFUNCTION    VARCHAR2(32 BYTE)              NOT NULL,
  STRCREATEUSER  VARCHAR2(16 BYTE)              NOT NULL,
  DTCREATE       DATE,
  STRTITLE       VARCHAR2(64 BYTE),
  STRTARGET      VARCHAR2(16 BYTE),
  STRURL         VARCHAR2(128 BYTE),
  STRTYPE        CHAR(1 BYTE)
)
	posted on 2009-12-18 10:12 
Ke 阅读(221) 
评论(0)  编辑  收藏  所属分类: 
oracle