home *** CD-ROM | disk | FTP | other *** search
/ PC Treasures, Inc. / pctreasures.mdf / WINDOWS / adabas / f_0001 / env / sysdba.ins < prev    next >
Text File  |  1999-11-01  |  24KB  |  1,438 lines

  1. SAY --- Installing system tables of SYSDBA ...
  2. /* @(#)SYSDBA.ins 10.01.00  1998-01-30
  3. /
  4. / * Hier muss END INIT SERVERDB und darf kein
  5. / * INTERNAL stehen, sonst wird SYSSTATISTICS
  6. / * zur SYSTEM Tabelle.
  7. /
  8. END INIT SERVERDB
  9. /
  10. IF $RC (EXISTS TABLE SYSSTATISTICS) <> 0
  11. THEN
  12.      BEGIN
  13. /
  14.      CREATE TABLE SYSSTATISTICS
  15.      (OWNER CHAR(18),
  16.       TABLENAME       CHAR(18),
  17.       COLUMNNAME      CHAR(18),
  18.       INDEXNAME       CHAR(18),
  19.       PAGES           FIXED(10),
  20.       DISTINCT_VALUES FIXED(10),
  21.       AVG_LIST_LEN    FIXED(10,1)
  22.      )
  23. /
  24.      IF $RC <> 0
  25.      THEN
  26.           BEGIN
  27. /
  28.           STOP 7
  29. /
  30.           END
  31. /
  32.      END
  33. /
  34. INIT SERVERDB
  35. /
  36. IF $RC (EXISTS TABLE SYSACCOUNT) = 0
  37. THEN
  38.      BEGIN
  39. /
  40.      DROP TABLE SYSACCOUNT
  41. /
  42.      COMMIT WORK
  43. /
  44.      END
  45. /
  46. CREATE TABLE SYSACCOUNT
  47. (SERVERDB_NO        FIXED (4),
  48.  SESSION            FIXED(18),
  49.  NOLOG_SESSION      CHAR(3),
  50.  USERNAME           VARCHAR(18),
  51.  GROUPNAME          VARCHAR(18),
  52.  TERMID             VARCHAR(18),
  53.  DBANAME            VARCHAR(18),
  54.  CONNECTDATE        DATE,
  55.  CONNECTTIME        TIME,
  56.  RELEASEDATE        DATE,
  57.  RELEASETIME        TIME,
  58.  COMMANDCOUNT       FIXED(10),
  59.  CPUTIME            FIXED(10),
  60.  DATA_CACHE_ACCESS  FIXED(18),
  61.  SESSIONEND         CHAR(8),
  62.  PROGTYPE           VARCHAR(8),
  63.  PROGOWNER          VARCHAR(18),
  64.  PROGNAME           VARCHAR(18),
  65.  CATALOG_CACHE_SIZE INTEGER,
  66.  CAT_CACHE_HITRATE  FIXED(4),
  67.  DBPROC_CACHE_SIZE  INTEGER,
  68.  TEMP_CACHE_SIZE    INTEGER,
  69.  TEMP_CACHE_HITRATE FIXED(4)
  70. )
  71. /
  72. IF $RC <> 0
  73. THEN
  74.      BEGIN
  75. /
  76.      END INIT SERVERDB
  77. /
  78.      STOP 7
  79. /
  80.      END
  81. /
  82. IF $RC (EXISTS TABLE SYS_UPDSTATISTICS) = 0
  83. THEN
  84.     BEGIN
  85. /*
  86.     DROP TABLE SYS_UPDSTATISTICS
  87. /*
  88.     COMMIT WORK
  89. /*
  90.     END
  91. /**
  92. /*IF $RC (EXISTS TABLE SYS_UPDSTATISTICS) <> 0
  93. /*THEN
  94. /*     BEGIN
  95. /*/
  96. /*    CREATE TABLE SYS_UPDSTATISTICS
  97. /*    (OWNER      CHAR(18),
  98. /*     TABLENAME  CHAR(18),
  99. /*     COLUMNNAME CHAR(18),
  100. /*     TABLEID    CHAR(8) BYTE,
  101. /*     "DATE"     DATE,
  102. /*     "TIME"     TIME,
  103. /*     PRIMARY KEY (OWNER, TABLENAME, COLUMNNAME)
  104. /*    )
  105. /*/*
  106. /*    IF $RC <> 0
  107. /*    THEN
  108. /*/*
  109. /*        STOP 7
  110. /*/*
  111. /*    GRANT ALL ON SYS_UPDSTATISTICS TO DOMAIN
  112. /*/*
  113. /*    IF $RC <> 0
  114. /*    THEN
  115. /*/*
  116. /*        STOP 7
  117. /*/*
  118. /*    END
  119. /*/**
  120. /
  121. IF $RC (EXISTS TABLE "SYS%CATALOG1") <> 0
  122. THEN
  123.      BEGIN
  124. /
  125.      CREATE TABLE "SYS%CATALOG1"
  126.      (K    CHAR(48)   BYTE,
  127.       INFO CHAR(3900) BYTE,
  128.       PRIMARY KEY (K)
  129.      )
  130. /
  131.      IF $RC <> 0
  132.      THEN
  133.           BEGIN
  134. /
  135.           END INIT SERVERDB
  136. /
  137.           STOP 7
  138. /
  139.           END
  140. /
  141.      END
  142. /
  143. IF $RC (EXISTS TABLE "SYS%CATALOG2") <> 0
  144. THEN
  145.      BEGIN
  146. /
  147.      CREATE TABLE "SYS%CATALOG2"
  148.      (K    CHAR(48)   BYTE,
  149.       INFO CHAR(3900) BYTE,
  150.       PRIMARY KEY (K)
  151.      )
  152. /
  153.      IF $RC <> 0
  154.      THEN
  155.           BEGIN
  156. /
  157.           END INIT SERVERDB
  158. /
  159.           STOP 7
  160. /
  161.           END
  162. /
  163.      END
  164. /
  165. IF $RC (EXISTS TABLE SYS_PACKAGE) = 0
  166. THEN
  167.      BEGIN
  168. /
  169.      DROP TABLE SYS_PACKAGE
  170. /
  171.      COMMIT WORK
  172. /
  173.      END
  174. /
  175. CREATE TABLE SYS_PACKAGE
  176. (CMD_ID        CHAR(8) BYTE,
  177.  SEQ           CHAR(4) BYTE,
  178.  CNT           CHAR(1) BYTE,
  179.  PROG_LANGUAGE CHAR(8),
  180.  PROG_NAME     CHAR(18),
  181.  MODULE_NAME   CHAR(18),
  182.  ISO_LEVEL     FIXED(2),
  183.  CNS_TOKEN     CHAR(8),
  184.  CMD           CHAR(3900),
  185.  PRIMARY KEY (CMD_ID, SEQ, CNT)
  186. )
  187. /
  188. IF $RC <> 0
  189. THEN
  190.      BEGIN
  191. /
  192.      END INIT SERVERDB
  193. /
  194.      STOP 7
  195. /
  196.      END
  197. /
  198. CREATE INDEX SYS_PACKAGE.CNS_TOKEN
  199. /
  200. IF $RC <> 0
  201. THEN
  202.      BEGIN
  203. /
  204.      END INIT SERVERDB
  205. /
  206.      STOP 7
  207. /
  208.      END
  209. /
  210. CREATE INDEX SYS_PACKAGE.PROG_NAME
  211. /
  212. IF $RC <> 0
  213. THEN
  214.      BEGIN
  215. /
  216.      END INIT SERVERDB
  217. /
  218.      STOP 7
  219. /
  220.      END
  221. /
  222. IF $RC (EXISTS TABLE DUAL) <> 0
  223. THEN
  224.      BEGIN
  225. /
  226.      END INIT SERVERDB
  227. /
  228.      CREATE TABLE DUAL (DUMMY CHAR(1))
  229. /
  230.      IF $RC <> 0
  231.      THEN
  232.           BEGIN
  233. /
  234.           END INIT SERVERDB
  235. /
  236.           STOP 7
  237. /
  238.           END
  239. /
  240.      INIT SERVERDB
  241. /
  242.      INSERT INTO DUAL VALUES ('a')
  243. /
  244.      IF $RC <> 0
  245.      THEN
  246.           BEGIN
  247. /
  248.           END INIT SERVERDB
  249. /
  250.           STOP 7
  251. /
  252.           END
  253. /
  254.      GRANT SELECT ON DUAL TO PUBLIC WITH GRANT OPTION
  255. /
  256.      IF $RC <> 0
  257.      THEN
  258.           BEGIN
  259. /
  260.           END INIT SERVERDB
  261. /
  262.           STOP 7
  263. /
  264.           END
  265. /
  266.      END
  267. /
  268. IF $RC (EXISTS TABLE OPTIMIZERSTATISTICS) = 0
  269. THEN
  270.      BEGIN
  271. /
  272.      DROP VIEW OPTIMIZERSTATISTICS
  273. /
  274.      COMMIT WORK
  275. /
  276.      END
  277. /
  278. CREATE VIEW OPTIMIZERSTATISTICS
  279.   (OWNER,TABLENAME,INDEXNAME,COLUMNNAME,
  280.    DISTINCTVALUES,PAGECOUNT,AVGLISTLENGTH)
  281. AS SELECT
  282.      OWNER,TABLENAME,INDEXNAME,COLUMNNAME,
  283.      DISTINCTVALUES,PAGECOUNT,AVGLISTLENGTH
  284.    FROM SYSDD.OPTIMIZER_STATS
  285. /
  286. IF $RC <> 0
  287. THEN
  288.      BEGIN
  289. /
  290.      END INIT SERVERDB
  291. /
  292.      STOP 7
  293. /
  294.      END
  295. /
  296. GRANT SELECT ON OPTIMIZERSTATISTICS TO PUBLIC WITH GRANT OPTION
  297. /
  298. IF $RC <> 0
  299. THEN
  300.      BEGIN
  301. /
  302.      END INIT SERVERDB
  303. /
  304.      STOP 7
  305. /
  306.      END
  307. /
  308. IF $RC (EXISTS TABLE CONFIGURATION) = 0
  309. THEN
  310.      BEGIN
  311. /
  312.      DROP VIEW CONFIGURATION
  313. /
  314.      COMMIT WORK
  315. /
  316.      END
  317. /
  318. CREATE VIEW CONFIGURATION
  319.   (DESCRIPTION,CHAR_VALUE,NUMERIC_VALUE)
  320. AS SELECT
  321.      DESCRIPTION,"VALUE",NUMERIC_VALUE
  322.    FROM SYSDD.CONFIGURATION
  323.    WHERE USER IN(SELECT USERNAME
  324.                  FROM SYSDD.USERS
  325.                  WHERE USERNAME = USERGROUP AND USERMODE IN('DBA','SYSDBA'))
  326. /
  327. IF $RC <> 0
  328. THEN
  329.      BEGIN
  330. /
  331.      END INIT SERVERDB
  332. /
  333.      STOP 7
  334. /
  335.      END
  336. /
  337. GRANT SELECT ON CONFIGURATION TO PUBLIC WITH GRANT OPTION
  338. /
  339. IF $RC <> 0
  340. THEN
  341.      BEGIN
  342. /
  343.      END INIT SERVERDB
  344. /
  345.      STOP 7
  346. /
  347.      END
  348. /
  349. IF $RC (EXISTS TABLE DATADEVSPACES) = 0
  350. THEN
  351.      BEGIN
  352. /
  353.      DROP VIEW DATADEVSPACES
  354. /
  355.      COMMIT WORK
  356. /
  357.      END
  358. /
  359. /CREATE VIEW DATADEVSPACES
  360. /  (DEVSPACENAME,DEVSPACESIZE,MAXDATAPAGENO,
  361. /   USEDPERMPAGES,PCTUSEDPERM,USEDTMPPAGES,
  362. /   PCTUSEDTMP,UNUSEDPAGES,PCTUNUSED)
  363. /AS SELECT
  364. /     DEVSPACENAME,PAGES,MAX_DATA_PAGE_NO,
  365. /     USED_PERM_PAGES,PCT_USED_PERM,USED_TEMP_PAGES,
  366. /     PCT_USED_TEMP,UNUSED_PAGES,PCT_UNUSED_PAGES
  367. /   FROM SYSDD.DEVSPACESTATISTICS
  368. /   WHERE USER IN(SELECT USERNAME
  369. /                 FROM SYSDD.USERS
  370. /                 WHERE USERNAME = USERGROUP AND USERMODE IN('DBA','SYSDBA'))
  371. /
  372. CREATE VIEW DATADEVSPACES
  373.   (DEVSPACENAME,DEVSPACESIZE,MAXDATAPAGENO,
  374.    USEDPERMPAGES,PCTUSEDPERM,USEDTMPPAGES,
  375.    PCTUSEDTMP,UNUSEDPAGES,PCTUNUSED)
  376. AS SELECT
  377.      DEVSPACENAME,1,1,
  378.      1,1,1,
  379.      1,1,1
  380.    FROM SYSDD.DEVSPACESTATISTICS
  381.    WHERE USER IN(SELECT USERNAME
  382.                  FROM SYSDD.USERS
  383.                  WHERE USERNAME = USERGROUP AND USERMODE IN('DBA','SYSDBA'))
  384. /
  385. IF $RC <> 0
  386. THEN
  387.      BEGIN
  388. /
  389.      END INIT SERVERDB
  390. /
  391.      STOP 7
  392. /
  393.      END
  394. /
  395. GRANT SELECT ON DATADEVSPACES TO PUBLIC WITH GRANT OPTION
  396. /
  397. IF $RC <> 0
  398. THEN
  399.      BEGIN
  400. /
  401.      END INIT SERVERDB
  402. /
  403.      STOP 7
  404. /
  405.      END
  406. /
  407. IF $RC (EXISTS TABLE INDEXSTATISTICS) = 0
  408. THEN
  409.      BEGIN
  410. /
  411.      DROP VIEW INDEXSTATISTICS
  412. /
  413.      COMMIT WORK
  414. /
  415.      END
  416. /
  417. CREATE VIEW INDEXSTATISTICS
  418.   (OWNER,TABLENAME,INDEXNAME,COLUMNNAME,
  419.    DESCRIPTION,CHAR_VALUE,NUMERIC_VALUE)
  420. AS SELECT
  421.      OWNER,TABLENAME,INDEXNAME,COLUMNNAME,
  422.      DESCRIPTION,"VALUE",NUMERIC_VALUE
  423.    FROM SYSDD.INDEXSTATISTICS
  424.    WHERE OWNER = USERGROUP OR USER = SYSDBA
  425. /
  426. IF $RC <> 0
  427. THEN
  428.      BEGIN
  429. /
  430.      END INIT SERVERDB
  431. /
  432.      STOP 7
  433. /
  434.      END
  435. /
  436. GRANT SELECT ON INDEXSTATISTICS TO PUBLIC WITH GRANT OPTION
  437. /
  438. IF $RC <> 0
  439. THEN
  440.      BEGIN
  441. /
  442.      END INIT SERVERDB
  443. /
  444.      STOP 7
  445. /
  446.      END
  447. /
  448. IF $RC (EXISTS TABLE LOCKSTATISTICS) = 0
  449. THEN
  450.      BEGIN
  451. /
  452.      DROP VIEW LOCKSTATISTICS
  453. /
  454.      COMMIT WORK
  455. /
  456.      END
  457. /
  458. CREATE VIEW LOCKSTATISTICS
  459.   (SESSION,TRANSACTION,SERVERDBNO,PROCESS,USERNAME,TERMID,
  460.    REMOTEUSER,PENDINGLOCK,LOCKMODE,LOCKREQUESTMODE,
  461.    OWNER,TABLENAME,ROWIDLENGTH,"ROWID",ROWIDHEX)
  462. AS SELECT
  463.      SESSION,TRANSACTION,SERVERDB,PROCESS,USERNAME,TERMID,
  464.      REMOTE_USER,PENDING_LOCK,LOCK_MODE,LOCK_REQUEST_MODE,
  465.      OWNER,TABLENAME,ROWID_LENGTH,"ROWID",ROWID_HEX
  466.    FROM SYSDD.LOCKS
  467.    WHERE USERNAME = USERGROUP OR OWNER = USERGROUP
  468.    OR USERGROUP IN(SELECT USERNAME
  469.                    FROM SYSDD.USERS
  470.                    WHERE USERMODE IN('DBA', 'SYSDBA')
  471.                    AND USERNAME = USERGROUP)
  472. /
  473. IF $RC <> 0
  474. THEN
  475.      BEGIN
  476. /
  477.      END INIT SERVERDB
  478. /
  479.      STOP 7
  480. /
  481.      END
  482. /
  483. GRANT SELECT ON LOCKSTATISTICS TO PUBLIC WITH GRANT OPTION
  484. /
  485. IF $RC <> 0
  486. THEN
  487.      BEGIN
  488. /
  489.      END INIT SERVERDB
  490. /
  491.      STOP 7
  492. /
  493.      END
  494. /
  495. IF $RC (EXISTS TABLE LOCKLISTSTATISTICS) = 0
  496. THEN
  497.      BEGIN
  498. /
  499.      DROP VIEW LOCKLISTSTATISTICS
  500. /
  501.      COMMIT WORK
  502. /
  503.      END
  504. /
  505. CREATE VIEW LOCKLISTSTATISTICS
  506.   (DESCRIPTION, "VALUE")
  507. AS SELECT
  508.      DESCRIPTION, "VALUE"
  509.    FROM SYSDD.LOCKSTATISTICS
  510.    WHERE
  511.    USERGROUP IN(SELECT USERNAME
  512.                 FROM SYSDD.USERS
  513.                 WHERE USERMODE IN('DBA', 'SYSDBA')
  514.                 AND USERNAME = USERGROUP)
  515. /
  516. IF $RC <> 0
  517. THEN
  518.      BEGIN
  519. /
  520.      END INIT SERVERDB
  521. /
  522.      STOP 7
  523. /
  524.      END
  525. /
  526. GRANT SELECT ON LOCKLISTSTATISTICS TO PUBLIC WITH GRANT OPTION
  527. /
  528. IF $RC <> 0
  529. THEN
  530.      BEGIN
  531. /
  532.      END INIT SERVERDB
  533. /
  534.      STOP 7
  535. /
  536.      END
  537. /
  538. IF $RC (EXISTS TABLE SERVERDBSTATISTICS) = 0
  539. THEN
  540.      BEGIN
  541. /
  542.      DROP VIEW SERVERDBSTATISTICS
  543. /
  544.      COMMIT WORK
  545. /
  546.      END
  547. /
  548. CREATE VIEW SERVERDBSTATISTICS
  549.   (SERVERDBSIZE,MAXDATAPAGENO,USEDPERMPAGES,PCTUSEDPERM,USEDTMPPAGES,
  550.    PCTUSEDTMP,UNUSEDPAGES,PCTUNUSED,UPDATEDPERMPAGES,
  551.    LOGSIZE,USEDLOGPAGES,PCTUSEDLOGPAGES,UNUSEDLOGPAGES,
  552.    PCTUNUSEDLOGPAGES,RESERVEDLOGPAGES,LOGSEGMENTSIZE,COMPLETESEGMENTS,
  553.    SAVEPOINTS,CHECKPOINTS,PAGESPERSAVEPOINT,PAGESPERCHECKPOINT)
  554. AS SELECT
  555.      SIZE,MAX_DATA_PAGE_NO,USED_PERM_PAGES,PCT_USED_PERM,USED_TEMP_PAGES,
  556.      PCT_USED_TEMP,UNUSED_PAGES,PCT_UNUSED_PAGES,UPDATED_PERM_PAGES,
  557.      LOG_PAGES,USED_LOG_PAGES,PCT_USED_LOG,UNUSED_LOG_PAGES,
  558.      PCT_UNUSED_LOG,RESERVED_LOG_PAGES,LOG_SEGMENT_SIZE,COMPLETED_LOG_SEGM,
  559.      SAVEPOINTS,CHECKPOINTS,PAGES_PER_SAVEPNT,PAGES_PER_CHECKPNT
  560.    FROM SYSDD.SERVERDBSTATISTICS
  561.    WHERE USER IN(SELECT USERNAME
  562.                  FROM SYSDD.USERS
  563.                  WHERE USERNAME = USERGROUP AND USERMODE IN('DBA', 'SYSDBA'))
  564. /
  565. IF $RC <> 0
  566. THEN
  567.      BEGIN
  568. /
  569.      END INIT SERVERDB
  570. /
  571.      STOP 7
  572. /
  573.      END
  574. /
  575. GRANT SELECT ON SERVERDBSTATISTICS TO PUBLIC WITH GRANT OPTION
  576. /
  577. IF $RC <> 0
  578. THEN
  579.      BEGIN
  580. /
  581.      END INIT SERVERDB
  582. /
  583.      STOP 7
  584. /
  585.      END
  586. /
  587. IF $RC (EXISTS TABLE TABLESTATISTICS) = 0
  588. THEN
  589.      BEGIN
  590. /
  591.      DROP VIEW TABLESTATISTICS
  592. /
  593.      COMMIT WORK
  594. /
  595.      END
  596. /
  597. CREATE VIEW TABLESTATISTICS
  598.   (OWNER,TABLENAME,DESCRIPTION,CHAR_VALUE,NUMERIC_VALUE)
  599. AS SELECT
  600.      OWNER,TABLENAME,DESCRIPTION,"VALUE",NUMERIC_VALUE
  601.    FROM SYSDD.TABLESTATISTICS
  602. /
  603. IF $RC <> 0
  604. THEN
  605.      BEGIN
  606. /
  607.      END INIT SERVERDB
  608. /
  609.      STOP 7
  610. /
  611.      END
  612. /
  613. GRANT SELECT ON TABLESTATISTICS TO PUBLIC WITH GRANT OPTION
  614. /
  615. IF $RC <> 0
  616. THEN
  617.      BEGIN
  618. /
  619.      END INIT SERVERDB
  620. /
  621.      STOP 7
  622. /
  623.      END
  624. /
  625. IF $RC (EXISTS TABLE TRANSACTIONS) = 0
  626. THEN
  627.      BEGIN
  628. /
  629.      DROP VIEW TRANSACTIONS
  630. /
  631.      COMMIT WORK
  632. /
  633.      END
  634. /
  635. CREATE VIEW TRANSACTIONS
  636.   (SESSION,TRANSACTION,SERVERDBNO,PROCESS,USERNAME,
  637.    CONNECTDATE, CONNECTTIME, TERMID,
  638.    REMOTEUSER,PENDINGLOCK,LOCKMODE,LOCKREQUESTMODE)
  639. AS SELECT
  640.      SESSION,TRANSACTION,SERVERDB,PROCESS,USERNAME,
  641.      "DATE", "TIME", TERMID,
  642.      REMOTE_USER,PENDING_LOCK,LOCK_MODE,LOCK_REQUEST_MODE
  643.    FROM SYSDD.TRANSACTIONS
  644.    WHERE USERNAME = USER
  645.    OR USERGROUP IN(SELECT USERNAME
  646.                    FROM SYSDD.USERS
  647.                    WHERE USERMODE IN('DBA', 'SYSDBA')
  648.                    AND USERNAME = USERGROUP)
  649. /
  650. IF $RC <> 0
  651. THEN
  652.      BEGIN
  653. /
  654.      END INIT SERVERDB
  655. /
  656.      STOP 7
  657. /
  658.      END
  659. /
  660. GRANT SELECT ON TRANSACTIONS TO PUBLIC WITH GRANT OPTION
  661. /
  662. IF $RC <> 0
  663. THEN
  664.      BEGIN
  665. /
  666.      END INIT SERVERDB
  667. /
  668.      STOP 7
  669. /
  670.      END
  671. /
  672. IF $RC (EXISTS TABLE USERSTATISTICS) = 0
  673. THEN
  674.      BEGIN
  675. /
  676.      DROP VIEW USERSTATISTICS
  677. /
  678.      COMMIT WORK
  679. /
  680.      END
  681. /
  682. CREATE VIEW USERSTATISTICS
  683.   (USERNAME,USERMODE,PERMLIMIT,PERMCOUNT,TEMPLIMIT,TEMPCOUNT)
  684. AS SELECT
  685.      USERNAME,USERMODE,PERMLIMIT,PERMCOUNT,TEMPLIMIT,TEMPCOUNT
  686.    FROM SYSDD.USERSTATISTICS
  687. /
  688. IF $RC <> 0
  689. THEN
  690.      BEGIN
  691. /
  692.      END INIT SERVERDB
  693. /
  694.      STOP 7
  695. /
  696.      END
  697. /
  698. GRANT SELECT ON USERSTATISTICS TO PUBLIC WITH GRANT OPTION
  699. /
  700. IF $RC <> 0
  701. THEN
  702.      BEGIN
  703. /
  704.      END INIT SERVERDB
  705. /
  706.      STOP 7
  707. /
  708.      END
  709. /
  710. IF $RC (EXISTS TABLE MONITOR_CACHES) = 0
  711. THEN
  712.      BEGIN
  713. /
  714.      DROP VIEW MONITOR_CACHES
  715. /
  716.      COMMIT WORK
  717. /
  718.      END
  719. /
  720. CREATE VIEW MONITOR_CACHES
  721.   (DESCRIPTION,"VALUE")
  722. AS SELECT
  723.      DESCRIPTION,"VALUE"
  724.    FROM SYSDD.MONITOR
  725.    WHERE "TYPE" = 'CACHES'
  726.    AND USERGROUP IN(SELECT USERNAME
  727.                     FROM SYSDD.USERS
  728.                     WHERE USERNAME = USERGROUP
  729.                     AND USERMODE IN('DBA','SYSDBA'))
  730. /
  731. IF $RC <> 0
  732. THEN
  733.      BEGIN
  734. /
  735.      END INIT SERVERDB
  736. /
  737.      STOP 7
  738. /
  739.      END
  740. /
  741. GRANT SELECT ON MONITOR_CACHES TO PUBLIC WITH GRANT OPTION
  742. /
  743. IF $RC <> 0
  744. THEN
  745.      BEGIN
  746. /
  747.      END INIT SERVERDB
  748. /
  749.      STOP 7
  750. /
  751.      END
  752. /
  753. IF $RC (EXISTS TABLE MONITOR_DBPROC) = 0
  754. THEN
  755.      BEGIN
  756. /
  757.      DROP VIEW MONITOR_DBPROC
  758. /
  759.      COMMIT WORK
  760. /
  761.      END
  762. /
  763. CREATE VIEW MONITOR_DBPROC
  764.   (DESCRIPTION,"VALUE")
  765. AS SELECT
  766.      DESCRIPTION,"VALUE"
  767.    FROM SYSDD.MONITOR
  768.    WHERE "TYPE" = 'DBPROC'
  769.    AND USERGROUP IN(SELECT USERNAME
  770.                     FROM SYSDD.USERS
  771.                     WHERE USERNAME = USERGROUP
  772.                     AND USERMODE IN('DBA','SYSDBA'))
  773. /
  774. IF $RC <> 0
  775. THEN
  776.      BEGIN
  777. /
  778.      END INIT SERVERDB
  779. /
  780.      STOP 7
  781. /
  782.      END
  783. /
  784. GRANT SELECT ON MONITOR_DBPROC TO PUBLIC WITH GRANT OPTION
  785. /
  786. IF $RC <> 0
  787. THEN
  788.      BEGIN
  789. /
  790.      END INIT SERVERDB
  791. /
  792.      STOP 7
  793. /
  794.      END
  795. /
  796. IF $RC (EXISTS TABLE MONITOR_LOAD) = 0
  797. THEN
  798.      BEGIN
  799. /
  800.      DROP VIEW MONITOR_LOAD
  801. /
  802.      COMMIT WORK
  803. /
  804.      END
  805. /
  806. CREATE VIEW MONITOR_LOAD
  807.   (DESCRIPTION,"VALUE")
  808. AS SELECT
  809.      DESCRIPTION,"VALUE"
  810.    FROM SYSDD.MONITOR
  811.    WHERE "TYPE" = 'LOAD'
  812.    AND USERGROUP IN(SELECT USERNAME
  813.                     FROM SYSDD.USERS
  814.                     WHERE USERNAME = USERGROUP
  815.                     AND USERMODE IN('DBA','SYSDBA'))
  816. /
  817. IF $RC <> 0
  818. THEN
  819.      BEGIN
  820. /
  821.      END INIT SERVERDB
  822. /
  823.      STOP 7
  824. /
  825.      END
  826. /
  827. GRANT SELECT ON MONITOR_LOAD TO PUBLIC WITH GRANT OPTION
  828. /
  829. IF $RC <> 0
  830. THEN
  831.      BEGIN
  832. /
  833.      END INIT SERVERDB
  834. /
  835.      STOP 7
  836. /
  837.      END
  838. /
  839. IF $RC (EXISTS TABLE MONITOR_LOCK) = 0
  840. THEN
  841.      BEGIN
  842. /
  843.      DROP VIEW MONITOR_LOCK
  844. /
  845.      COMMIT WORK
  846. /
  847.      END
  848. /
  849. CREATE VIEW MONITOR_LOCK
  850.   (DESCRIPTION,"VALUE")
  851. AS SELECT
  852.      DESCRIPTION,"VALUE"
  853.    FROM SYSDD.MONITOR
  854.    WHERE "TYPE" = 'LOCK'
  855.    AND USERGROUP IN(SELECT USERNAME
  856.                     FROM SYSDD.USERS
  857.                     WHERE USERNAME = USERGROUP
  858.                     AND USERMODE IN('DBA','SYSDBA'))
  859. /
  860. IF $RC <> 0
  861. THEN
  862.      BEGIN
  863. /
  864.      END INIT SERVERDB
  865. /
  866.      STOP 7
  867. /
  868.      END
  869. /
  870. GRANT SELECT ON MONITOR_LOCK TO PUBLIC WITH GRANT OPTION
  871. /
  872. IF $RC <> 0
  873. THEN
  874.      BEGIN
  875. /
  876.      END INIT SERVERDB
  877. /
  878.      STOP 7
  879. /
  880.      END
  881. /
  882. IF $RC (EXISTS TABLE MONITOR_LOG) = 0
  883. THEN
  884.      BEGIN
  885. /
  886.      DROP VIEW MONITOR_LOG
  887. /
  888.      COMMIT WORK
  889. /
  890.      END
  891. /
  892. CREATE VIEW MONITOR_LOG
  893.   (DESCRIPTION,"VALUE")
  894. AS SELECT
  895.      DESCRIPTION,"VALUE"
  896.    FROM SYSDD.MONITOR
  897.    WHERE "TYPE" = 'LOG'
  898.    AND USERGROUP IN(SELECT USERNAME
  899.                     FROM SYSDD.USERS
  900.                     WHERE USERNAME = USERGROUP
  901.                     AND USERMODE IN('DBA','SYSDBA'))
  902. /
  903. IF $RC <> 0
  904. THEN
  905.      BEGIN
  906. /
  907.      END INIT SERVERDB
  908. /
  909.      STOP 7
  910. /
  911.      END
  912. /
  913. GRANT SELECT ON MONITOR_LOG TO PUBLIC WITH GRANT OPTION
  914. /
  915. IF $RC <> 0
  916. THEN
  917.      BEGIN
  918. /
  919.      END INIT SERVERDB
  920. /
  921.      STOP 7
  922. /
  923.      END
  924. /
  925. IF $RC (EXISTS TABLE MONITOR_LONG) = 0
  926. THEN
  927.      BEGIN
  928. /
  929.      DROP VIEW MONITOR_LONG
  930. /
  931.      COMMIT WORK
  932. /
  933.      END
  934. /
  935. CREATE VIEW MONITOR_LONG
  936.   (DESCRIPTION,"VALUE")
  937. AS SELECT
  938.      DESCRIPTION,"VALUE"
  939.    FROM SYSDD.MONITOR
  940.    WHERE "TYPE" = 'LONG'
  941.    AND USERGROUP IN(SELECT USERNAME
  942.                     FROM SYSDD.USERS
  943.                     WHERE USERNAME = USERGROUP
  944.                     AND USERMODE IN('DBA','SYSDBA'))
  945. /
  946. IF $RC <> 0
  947. THEN
  948.      BEGIN
  949. /
  950.      END INIT SERVERDB
  951. /
  952.      STOP 7
  953. /
  954.      END
  955. /
  956. GRANT SELECT ON MONITOR_LONG TO PUBLIC WITH GRANT OPTION
  957. /
  958. IF $RC <> 0
  959. THEN
  960.      BEGIN
  961. /
  962.      END INIT SERVERDB
  963. /
  964.      STOP 7
  965. /
  966.      END
  967. /
  968. IF $RC (EXISTS TABLE MONITOR_PAGES) = 0
  969. THEN
  970.      BEGIN
  971. /
  972.      DROP VIEW MONITOR_PAGES
  973. /
  974.      COMMIT WORK
  975. /
  976.      END
  977. /
  978. CREATE VIEW MONITOR_PAGES
  979.   (DESCRIPTION,"VALUE")
  980. AS SELECT
  981.      DESCRIPTION,"VALUE"
  982.    FROM SYSDD.MONITOR
  983.    WHERE "TYPE" = 'PAGES'
  984.    AND USERGROUP IN(SELECT USERNAME
  985.                     FROM SYSDD.USERS
  986.                     WHERE USERNAME = USERGROUP
  987.                     AND USERMODE IN('DBA','SYSDBA'))
  988. /
  989. IF $RC <> 0
  990. THEN
  991.      BEGIN
  992. /
  993.      END INIT SERVERDB
  994. /
  995.      STOP 7
  996. /
  997.      END
  998. /
  999. GRANT SELECT ON MONITOR_PAGES TO PUBLIC WITH GRANT OPTION
  1000. /
  1001. IF $RC <> 0
  1002. THEN
  1003.      BEGIN
  1004. /
  1005.      END INIT SERVERDB
  1006. /
  1007.      STOP 7
  1008. /
  1009.      END
  1010. /
  1011. IF $RC (EXISTS TABLE MONITOR_ROW) = 0
  1012. THEN
  1013.      BEGIN
  1014. /
  1015.      DROP VIEW MONITOR_ROW
  1016. /
  1017.      COMMIT WORK
  1018. /
  1019.      END
  1020. /
  1021. CREATE VIEW MONITOR_ROW
  1022.   (DESCRIPTION,"VALUE")
  1023. AS SELECT
  1024.      DESCRIPTION,"VALUE"
  1025.    FROM SYSDD.MONITOR
  1026.    WHERE "TYPE" = 'ROW'
  1027.    AND USERGROUP IN(SELECT USERNAME
  1028.                     FROM SYSDD.USERS
  1029.                     WHERE USERNAME = USERGROUP
  1030.                     AND USERMODE IN('DBA','SYSDBA'))
  1031. /
  1032. IF $RC <> 0
  1033. THEN
  1034.      BEGIN
  1035. /
  1036.      END INIT SERVERDB
  1037. /
  1038.      STOP 7
  1039. /
  1040.      END
  1041. /
  1042. GRANT SELECT ON MONITOR_ROW TO PUBLIC WITH GRANT OPTION
  1043. /
  1044. IF $RC <> 0
  1045. THEN
  1046.      BEGIN
  1047. /
  1048.      END INIT SERVERDB
  1049. /
  1050.      STOP 7
  1051. /
  1052.      END
  1053. /
  1054. IF $RC (EXISTS TABLE MONITOR_SERVERDB) = 0
  1055. THEN
  1056.      BEGIN
  1057. /
  1058.      DROP VIEW MONITOR_SERVERDB
  1059. /
  1060.      COMMIT WORK
  1061. /
  1062.      END
  1063. /
  1064. CREATE VIEW MONITOR_SERVERDB
  1065.   (DESCRIPTION,"VALUE")
  1066. AS SELECT
  1067.      DESCRIPTION,"VALUE"
  1068.    FROM SYSDD.MONITOR
  1069.    WHERE "TYPE" = 'SERVERDB'
  1070.    AND USERGROUP IN(SELECT USERNAME
  1071.                     FROM SYSDD.USERS
  1072.                     WHERE USERNAME = USERGROUP
  1073.                     AND USERMODE IN('DBA','SYSDBA'))
  1074. /
  1075. IF $RC <> 0
  1076. THEN
  1077.      BEGIN
  1078. /
  1079.      END INIT SERVERDB
  1080. /
  1081.      STOP 7
  1082. /
  1083.      END
  1084. /
  1085. GRANT SELECT ON MONITOR_SERVERDB TO PUBLIC WITH GRANT OPTION
  1086. /
  1087. IF $RC <> 0
  1088. THEN
  1089.      BEGIN
  1090. /
  1091.      END INIT SERVERDB
  1092. /
  1093.      STOP 7
  1094. /
  1095.      END
  1096. /
  1097. IF $RC (EXISTS TABLE MONITOR_TRANS) = 0
  1098. THEN
  1099.      BEGIN
  1100. /
  1101.      DROP VIEW MONITOR_TRANS
  1102. /
  1103.      COMMIT WORK
  1104. /
  1105.      END
  1106. /
  1107. CREATE VIEW MONITOR_TRANS
  1108.   (DESCRIPTION,"VALUE")
  1109. AS SELECT
  1110.      DESCRIPTION,"VALUE"
  1111.    FROM SYSDD.MONITOR
  1112.    WHERE "TYPE" = 'TRANS'
  1113.    AND USERGROUP IN(SELECT USERNAME
  1114.                     FROM SYSDD.USERS
  1115.                     WHERE USERNAME = USERGROUP
  1116.                     AND USERMODE IN('DBA','SYSDBA'))
  1117. /
  1118. IF $RC <> 0
  1119. THEN
  1120.      BEGIN
  1121. /
  1122.      END INIT SERVERDB
  1123. /
  1124.      STOP 7
  1125. /
  1126.      END
  1127. /
  1128. GRANT SELECT ON MONITOR_TRANS TO PUBLIC WITH GRANT OPTION
  1129. /
  1130. IF $RC <> 0
  1131. THEN
  1132.      BEGIN
  1133. /
  1134.      END INIT SERVERDB
  1135. /
  1136.      STOP 7
  1137. /
  1138.      END
  1139. /
  1140. IF $RC (EXISTS TABLE MONITOR_VTRACE) = 0
  1141. THEN
  1142.      BEGIN
  1143. /
  1144.      DROP VIEW MONITOR_VTRACE
  1145. /
  1146.      COMMIT WORK
  1147. /
  1148.      END
  1149. /
  1150. CREATE VIEW MONITOR_VTRACE
  1151.   (DESCRIPTION,"VALUE")
  1152. AS SELECT
  1153.      DESCRIPTION,"VALUE"
  1154.    FROM SYSDD.MONITOR
  1155.    WHERE "TYPE" = 'VTRACE'
  1156.    AND USERGROUP IN(SELECT USERNAME
  1157.                     FROM SYSDD.USERS
  1158.                     WHERE USERNAME = USERGROUP
  1159.                     AND USERMODE IN('DBA','SYSDBA'))
  1160. /
  1161. IF $RC <> 0
  1162. THEN
  1163.      BEGIN
  1164. /
  1165.      END INIT SERVERDB
  1166. /
  1167.      STOP 7
  1168. /
  1169.      END
  1170. /
  1171. GRANT SELECT ON MONITOR_VTRACE TO PUBLIC WITH GRANT OPTION
  1172. /
  1173. IF $RC <> 0
  1174. THEN
  1175.      BEGIN
  1176. /
  1177.      END INIT SERVERDB
  1178. /
  1179.      STOP 7
  1180. /
  1181.      END
  1182. /
  1183. IF $RC (EXISTS TABLE MONITOR) = 0
  1184. THEN
  1185.      BEGIN
  1186. /
  1187.      DROP VIEW MONITOR
  1188. /
  1189.      COMMIT WORK
  1190. /
  1191.      END
  1192. /
  1193. CREATE VIEW MONITOR
  1194.   ("TYPE",DESCRIPTION,"VALUE")
  1195. AS SELECT
  1196.      "TYPE",DESCRIPTION,"VALUE"
  1197.    FROM SYSDD.MONITOR
  1198.    WHERE USERGROUP IN(SELECT USERNAME
  1199.                       FROM SYSDD.USERS
  1200.                       WHERE USERNAME = USERGROUP
  1201.                       AND USERMODE IN('DBA','SYSDBA'))
  1202. /
  1203. IF $RC <> 0
  1204. THEN
  1205.      BEGIN
  1206. /
  1207.      END INIT SERVERDB
  1208. /
  1209.      STOP 7
  1210. /
  1211.      END
  1212. /
  1213. GRANT SELECT ON MONITOR TO PUBLIC WITH GRANT OPTION
  1214. /
  1215. IF $RC <> 0
  1216. THEN
  1217.      BEGIN
  1218. /
  1219.      END INIT SERVERDB
  1220. /
  1221.      STOP 7
  1222. /
  1223.      END
  1224. /
  1225. IF $RC (EXISTS TABLE DBTIMES) = 0
  1226. THEN
  1227.      BEGIN
  1228. /
  1229.      DROP VIEW DBTIMES
  1230. /
  1231.      COMMIT WORK
  1232. /
  1233.      END
  1234. /
  1235. CREATE VIEW DBTIMES
  1236.   (RESTART_DATE, RESTART_TIME)
  1237. AS SELECT
  1238.      "DATE", "TIME"
  1239.    FROM SYSDD.SERVERDBSTATISTICS
  1240.    WHERE USERGROUP IN(SELECT USERNAME
  1241.                       FROM SYSDD.USERS
  1242.                       WHERE USERNAME = USERGROUP
  1243.                       AND USERMODE IN('DBA','SYSDBA'))
  1244. /
  1245. IF $RC <> 0
  1246. THEN
  1247.      BEGIN
  1248. /
  1249.      END INIT SERVERDB
  1250. /
  1251.      STOP 7
  1252. /
  1253.      END
  1254. /
  1255. GRANT SELECT ON DBTIMES TO PUBLIC WITH GRANT OPTION
  1256. /
  1257. IF $RC <> 0
  1258. THEN
  1259.      BEGIN
  1260. /
  1261.      END INIT SERVERDB
  1262. /
  1263.      STOP 7
  1264. /
  1265.      END
  1266. /
  1267. IF $RC (EXISTS TABLE DBPARAMETERS) = 0
  1268. THEN
  1269.      BEGIN
  1270. /
  1271.      DROP VIEW DBPARAMETERS
  1272. /
  1273.      COMMIT WORK
  1274. /
  1275.     END
  1276. /
  1277. CREATE VIEW DBPARAMETERS
  1278.   (DESCRIPTION, "VALUE")
  1279. AS SELECT
  1280.      "DESCRIPTION", "VALUE"
  1281.    FROM SYSDD.XPARAMETERS
  1282.    WHERE USERGROUP IN(SELECT USERNAME
  1283.                       FROM SYSDD.USERS
  1284.                       WHERE USERNAME = USERGROUP
  1285.                       AND USERMODE IN('DBA','SYSDBA'))
  1286. /
  1287. IF $RC <> 0
  1288. THEN
  1289.      BEGIN
  1290. /
  1291.      END INIT SERVERDB
  1292. /
  1293.      STOP 7
  1294. /
  1295.      END
  1296. /
  1297. GRANT SELECT ON DBPARAMETERS TO PUBLIC WITH GRANT OPTION
  1298. /
  1299. IF $RC <> 0
  1300. THEN
  1301.      BEGIN
  1302. /
  1303.      END INIT SERVERDB
  1304. /
  1305.      STOP 7
  1306. /
  1307.      END
  1308. /
  1309. IF $RC (EXISTS TABLE ROOTS) = 0
  1310. THEN
  1311.      BEGIN
  1312. /
  1313.      DROP VIEW ROOTS
  1314. /
  1315.      COMMIT WORK
  1316. /
  1317.      END
  1318. /
  1319. CREATE VIEW ROOTS
  1320.   (TABLEID,OWNER,TABLENAME,INDEXNAME,TYPE,ROOT)
  1321. AS SELECT
  1322.      TABLEID,OWNER,TABLENAME,INDEXNAME,TYPE,ROOT
  1323.    FROM SYSDD.ROOTS
  1324.    WHERE USERGROUP IN(OWNER,LOCALSYSDBA)
  1325. /
  1326. IF $RC <> 0
  1327. THEN
  1328.      BEGIN
  1329. /
  1330.      END INIT SERVERDB
  1331. /
  1332.      STOP 7
  1333. /
  1334.      END
  1335. /
  1336. GRANT SELECT ON ROOTS TO PUBLIC WITH GRANT OPTION
  1337. /
  1338. IF $RC <> 0
  1339. THEN
  1340.      BEGIN
  1341. /
  1342.      END INIT SERVERDB
  1343. /
  1344.      STOP 7
  1345. /
  1346.      END
  1347. /
  1348. COMMIT WORK
  1349. /
  1350. IF $RC (EXISTS TABLE PAGES) = 0
  1351. THEN
  1352.     BEGIN
  1353. /
  1354.     DROP VIEW PAGES
  1355. /
  1356.     COMMIT WORK
  1357. /
  1358.     END
  1359. /
  1360. CREATE VIEW PAGES
  1361.   (OWNER,TABLENAME,DESCRIPTION,CHAR_VALUE,NUMERIC_VALUE)
  1362. AS SELECT
  1363.      OWNER,TABLENAME,DESCRIPTION,"VALUE",NUMERIC_VALUE
  1364.    FROM SYSDD.PAGES
  1365. /
  1366. IF $RC <> 0
  1367. THEN
  1368.     BEGIN
  1369. /
  1370.     END INIT SERVERDB
  1371. /
  1372.     STOP 7
  1373. /
  1374.     END
  1375. /
  1376. GRANT SELECT ON PAGES TO PUBLIC WITH GRANT OPTION
  1377. /
  1378. IF $RC <> 0
  1379. THEN
  1380.     BEGIN
  1381. /
  1382.     END INIT SERVERDB
  1383. /
  1384.     STOP 7
  1385. /
  1386.     END
  1387. /
  1388. COMMIT WORK
  1389. /
  1390. IF $RC (EXISTS TABLE TREELOCKS) = 0
  1391. THEN
  1392.     BEGIN
  1393. /
  1394.     DROP VIEW TREELOCKS
  1395. /
  1396.     COMMIT WORK
  1397. /
  1398.     END
  1399. /
  1400. CREATE VIEW TREELOCKS
  1401.   ("ROOT","LEAF","PROCESS","STATE","MODE")
  1402. AS SELECT
  1403.      DECODE ("ROOT",  2147483647, 'NIL PAGE NO', CHR("ROOT",  10)),
  1404.      DECODE ("LEAF",  2147483647, 'NIL PAGE NO', chr("LEAF",  10)),
  1405.      PROCESS, STATE, MODE
  1406.    FROM SYSDD.TREELOCKS
  1407.    WHERE USER IN(SELECT USERNAME
  1408.                  FROM SYSDD.USERS
  1409.                  WHERE USERNAME = USERGROUP
  1410.                  AND USERMODE IN('DBA','SYSDBA'))
  1411. /
  1412. IF $RC <> 0
  1413. THEN
  1414.     BEGIN
  1415. /
  1416.     END INIT SERVERDB
  1417. /
  1418.     STOP 7
  1419. /
  1420.     END
  1421. /
  1422. GRANT SELECT ON TREELOCKS TO PUBLIC WITH GRANT OPTION
  1423. /
  1424. IF $RC <> 0
  1425. THEN
  1426.     BEGIN
  1427. /
  1428.     END INIT SERVERDB
  1429. /
  1430.     STOP 7
  1431. /
  1432.     END
  1433. /
  1434. COMMIT WORK
  1435. /
  1436. /END INIT SERVERDB
  1437. /
  1438.