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

  1. *   *ID* ORADDV   CMD      changed on 1994-12-15-12.36.43 by KRISCHAN  *
  2.  
  3. * This command file contains descriptions of the data dictionary tables
  4. * and views. To see the current data dictionary on your system,
  5. * query the view DICTIONARY.
  6. *
  7.  
  8.  
  9. SQLMODE ADABAS
  10. *
  11. INIT SERVERDB
  12. *
  13. USE USER sys sys
  14. *
  15.  
  16. *
  17. * ==================================
  18. * Part 1) User Data Dictionary Views
  19. * ==================================
  20. *
  21. * The following is an alphabetical reference of the data dictionary views
  22. * accessible to all users of the database. Most views can be accessed by
  23. * any user with the CREATE_SESSION privilege
  24. *
  25.  
  26. CREATE VIEW all_catalog
  27.        (owner, table_name, table_type)
  28.     AS SELECT
  29.         EXPAND (owner,     30),
  30.         EXPAND (tablename, 30),
  31.         EXPAND (type,      11)
  32.       FROM sysdd.tables
  33.   UNION ALL
  34.     SELECT
  35.         EXPAND (owner,         30),
  36.         EXPAND (sequence_name, 30),
  37.         'SEQUENCE   '
  38.       FROM sysdd.sequences
  39. *
  40. GRANT ALL ON all_catalog TO PUBLIC WITH GRANT OPTION
  41. *
  42.  
  43. CREATE VIEW all_col_comments
  44.        (owner, table_name, column_name, comments)
  45.     AS SELECT
  46.         EXPAND (owner,      30),
  47.         EXPAND (tablename,  30),
  48.         EXPAND (columnname, 30),
  49.         comment_c
  50.     FROM sysdd.columns
  51. *
  52. GRANT ALL ON all_col_comments TO PUBLIC WITH GRANT OPTION
  53. *
  54.  
  55. CREATE VIEW all_col_privs
  56.       (grantor, grantee, table_schema, table_name, column_name,
  57.        privilege, grantable)
  58.   AS SELECT
  59.         EXPAND (grantor, 30),
  60.     EXPAND (grantee, 30),
  61.     EXPAND (owner,   30),
  62.         EXPAND (name1,   30),
  63.         EXPAND (name2,   30),
  64.         RTRIM  (privileges, '+'),
  65.         DECODE (INDEX (privileges, '+'), 0, 'NO', 'YES')
  66.      FROM sysdd.new_privileges
  67.      WHERE name2 IS NOT NULL AND grantor <> grantee
  68. *
  69. GRANT ALL ON all_col_privs TO PUBLIC WITH GRANT OPTION
  70. *
  71.  
  72. CREATE VIEW all_col_privs_made
  73.       (grantee, owner, table_name, column_name, grantor, privilege, grantable)
  74.   AS SELECT
  75.     EXPAND (grantee, 30),
  76.     EXPAND (owner,   30),
  77.         EXPAND (name1,   30),
  78.         EXPAND (name2,   30),
  79.         EXPAND (grantor, 30),
  80.         RTRIM  (privileges, '+'),
  81.         DECODE (INDEX (privileges, '+'), 0, 'NO', 'YES')
  82.      FROM sysdd.new_privileges
  83.      WHERE name2 IS NOT NULL AND grantor <> grantee
  84.        AND (grantor = USERGROUP OR owner = USERGROUP)
  85. *
  86. GRANT ALL ON all_col_privs_made TO PUBLIC WITH GRANT OPTION
  87. *
  88.  
  89. CREATE VIEW all_col_privs_recd
  90.       (grantee, owner, table_name, column_name, grantor, privilege, grantable)
  91.   AS SELECT
  92.     EXPAND (grantee, 30),
  93.     EXPAND (owner,   30),
  94.         EXPAND (name1,   30),
  95.         EXPAND (name2,   30),
  96.         EXPAND (grantor, 30),
  97.         RTRIM  (privileges, '+'),
  98.         DECODE (INDEX (privileges, '+'), 0, 'NO', 'YES')
  99.      FROM sysdd.new_privileges
  100.      WHERE name2 IS NOT NULL AND grantor <> USERGROUP
  101.        AND (grantee = USERGROUP OR grantee = 'PUBLIC')
  102. *
  103. GRANT ALL ON all_col_privs_recd TO PUBLIC WITH GRANT OPTION
  104. *
  105.  
  106. CREATE VIEW all_constraints
  107.       (owner, constraint_name, constraint_type, table_name,
  108.        search_condition, r_owner, r_constraint_name, delete_rule, status)
  109.     AS SELECT
  110.         EXPAND (owner,          30),
  111.         EXPAND (constraintname, 30),
  112.         'C ',
  113.         EXPAND (tablename,      30),
  114.         definition_c,
  115.         EXPAND (NULL, 30),
  116.         EXPAND (NULL, 30),
  117.         EXPAND (NULL, 10),
  118.     'ENABLED '
  119.     FROM sysdd.constraints
  120. UNION ALL SELECT
  121.        EXPAND (owner,     30),
  122.        'C' || tablename || CHR (columnno),
  123.        'C ',
  124.        EXPAND (tablename, 30),
  125.        columnname || ' IS NOT NULL',
  126.        EXPAND (NULL, 30),
  127.        EXPAND (NULL, 30),
  128.        EXPAND (NULL, 10),
  129.        'ENABLED '
  130.    FROM sysdd.columns
  131.    WHERE mod = 'MAN'
  132. UNION ALL SELECT
  133.        EXPAND (owner,      30),
  134.        'P' || tablename || CHR (keycolumnno),
  135.        'P ',
  136.        EXPAND (tablename,  30),
  137.        EXPAND (columnname, 30),
  138.        EXPAND (NULL, 30),
  139.        EXPAND (NULL, 30),
  140.        EXPAND (NULL, 10),
  141.        'ENABLED '
  142.   FROM sysdd.columns
  143.   WHERE keycolumnno IS NOT NULL
  144. UNION ALL SELECT
  145.        EXPAND (owner,      30),
  146.        EXPAND (refname,    30),
  147.        'R ',
  148.        EXPAND (tablename,  30),
  149.        EXPAND (columnname, 30),
  150.        EXPAND (refowner,   30),
  151.        EXPAND (NULL, 30),
  152.        DECODE (rule, 'DELETE CASCADE',  'CASCADE',
  153.                      'DELETE RESTRICT', 'NO ACTION',
  154.                                         rule),
  155.        'ENABLED '
  156.   FROM sysdd.foreign_keys
  157. *
  158. GRANT ALL ON all_constraints TO PUBLIC WITH GRANT OPTION
  159. *
  160.  
  161. CREATE VIEW all_cons_columns
  162.       (owner, constraint_name, table_name, column_name, position)
  163.     AS SELECT
  164.         EXPAND (owner,          30),
  165.     DECODE (type, 'KEY', 'P' || columnname || CHR (columnno),
  166.                              EXPAND (constraintname, 30)),
  167.         EXPAND (tablename,      30),
  168.         EXPAND (columnname,     30),
  169.         DECODE (type, 'CHECK', NULL, columnno)
  170.        FROM sysdd.constraintcolumns
  171. *
  172. GRANT ALL ON all_cons_columns TO PUBLIC WITH GRANT OPTION
  173. *
  174.  
  175. CREATE VIEW all_db_links
  176.       (owner, db_link, username, host, created)
  177.     AS SELECT
  178.         EXPAND (' ',  30),
  179.         EXPAND (' ',  30),
  180.         EXPAND (' ',  30),
  181.         EXPAND (' ', 254),
  182.         TIMESTAMP (DATE, TIME)
  183.     FROM dual
  184.        WHERE 0 = 1
  185. *
  186. GRANT ALL ON all_db_links TO PUBLIC WITH GRANT OPTION
  187. *
  188.  
  189. CREATE VIEW all_def_audit_opts
  190.       (alt, aud, com, del, gra, ind, ins, loc, ren, sel, upd, ref, exe)
  191.     AS SELECT
  192.        '-/-', '-/-', '-/-', '-/-', '-/-', '-/-', '-/-', '-/-',
  193.        '-/-', '-/-', '-/-', '-/-', '-/-'
  194.       FROM dual
  195. *
  196. GRANT ALL ON all_def_audit_opts TO PUBLIC WITH GRANT OPTION
  197. *
  198.  
  199. CREATE VIEW all_dependencies
  200.        (owner, name, type, referenced_owner, referenced_name, referenced_type,
  201.         referenced_link_name)
  202.   AS SELECT
  203.        EXPAND (owner,        30),
  204.        EXPAND (tablename,    30),
  205.        'VIEW        ',
  206.        EXPAND (refname,      30),
  207.        EXPAND (reftablename, 30),
  208.        'TABLE       ',
  209.        EXPAND (NULL, 30)
  210.      FROM sysdd.view_uses_table
  211. *
  212. GRANT ALL ON all_dependencies TO PUBLIC WITH GRANT OPTION
  213. *
  214.  
  215. CREATE VIEW all_errors
  216.        (owner, name, type, sequence, line, position, text)
  217.   AS SELECT
  218.        EXPAND (USER, 30),
  219.        EXPAND (' ',  30),
  220.        EXPAND (' ',  12),
  221.        999, 1, 1,
  222.        EXPAND (' ',  200)
  223.      FROM dual
  224.      WHERE 0 = 1
  225. *
  226. GRANT ALL ON all_errors TO PUBLIC WITH GRANT OPTION
  227. *
  228.  
  229. CREATE VIEW all_indexes
  230.       (owner, index_name, table_owner, table_name, table_type, uniqueness,
  231.        tablespace_name, ini_trans, max_trans, initial_extent, next_extent,
  232.        min_extents, max_extents, pct_increase, pct_free, blevel, leaf_blocks,
  233.        distinct_keys, avg_leaf_blocks_per_key, avg_data_blocks_per_key,
  234.        clustering_factor, status)
  235.     AS SELECT
  236.         EXPAND (owner,      30),
  237.         EXPAND (indexname,  30),
  238.         EXPAND (owner,      30),
  239.         EXPAND (tablename,  30),
  240.         'TABLE      ',
  241.         DECODE (type, ' ', 'NONUNIQUE', type),
  242.     'SYSTEM                        ',
  243.         FIXED (NULL),
  244.         FIXED (NULL),
  245.         FIXED (NULL),
  246.         FIXED (NULL),
  247.         FIXED (NULL),
  248.         FIXED (NULL),
  249.         FIXED (NULL),
  250.         FIXED (NULL),
  251.         FIXED (NULL),
  252.         FIXED (NULL),
  253.     distinctvalues,
  254.         FIXED (NULL),
  255.         FIXED (NULL),
  256.         FIXED (NULL),
  257.     'VALID      '
  258.     FROM sysdd.indexes
  259.        WHERE indexname <> ' ' AND columnno = 1
  260. *
  261. GRANT ALL ON all_indexes TO PUBLIC WITH GRANT OPTION
  262. *
  263.  
  264. CREATE VIEW all_ind_columns
  265.       (index_owner, index_name, table_owner, table_name,
  266.        column_name, column_position, column_length)
  267.     AS SELECT
  268.         EXPAND (owner,      30),
  269.         EXPAND (indexname,  30),
  270.         EXPAND (owner,      30),
  271.         EXPAND (tablename,  30),
  272.         EXPAND (columnname, 30),
  273.         columnno,
  274.         DECODE (datatype, 'NUMBER',    22,
  275.                           'FLOAT',     22,
  276.                           'DATE',      7,
  277.                           'LONG',      28,
  278.                                        len)
  279.     FROM sysdd.indexes
  280.       WHERE indexname <> ' '
  281. *
  282. GRANT ALL ON all_ind_columns TO PUBLIC WITH GRANT OPTION
  283. *
  284.  
  285. CREATE VIEW all_objects
  286.       (owner, object_name, object_id, object_type, created,
  287.        last_ddl_time, "TIMESTAMP", status)
  288.     AS SELECT
  289.         EXPAND (owner,      30),
  290.         EXPAND (tablename,  30),
  291.         tableid,
  292.         EXPAND (type,       11),
  293.         TIMESTAMP ("DATE", "TIME"),
  294.         TIMESTAMP (VALUE (TIMESTAMP (alterdate, altertime),
  295.                           TIMESTAMP ("DATE",    "TIME"))),
  296.         EXPAND (CHAR ("DATE", JIS) || ':' || CHAR ("TIME", JIS), 75),
  297.     'VALID  '
  298.     FROM sysdd.tables
  299.   UNION ALL
  300.     SELECT
  301.         EXPAND (owner,         30),
  302.         EXPAND (sequence_name, 30),
  303.         NO,
  304.         'SEQUENCE',
  305.         TIMESTAMP ("DATE", "TIME"),
  306.         TIMESTAMP ("DATE", "TIME"),
  307.         EXPAND (CHAR ("DATE", JIS) || ':' || CHAR ("TIME", JIS), 75),
  308.     'VALID  '
  309.       FROM sysdd.sequences
  310.   UNION ALL
  311.     SELECT
  312.         EXPAND (owner,     30),
  313.         EXPAND (indexname, 30),
  314.         NULL,
  315.         'INDEX',
  316.         TIMESTAMP ("DATE", "TIME"),
  317.         TIMESTAMP ("DATE", "TIME"),
  318.         EXPAND (CHAR ("DATE", JIS) || ':' || CHAR ("TIME", JIS), 75),
  319.     'VALID  '
  320.       FROM sysdd.indexes
  321.       WHERE columnno = 1
  322. *
  323. GRANT ALL ON all_objects TO PUBLIC WITH GRANT OPTION
  324. *
  325.  
  326. CREATE VIEW all_sequences
  327.       (sequence_owner, sequence_name, min_value, max_value, increment_by,
  328.        cycle_flag, order_flag, cache_size, last_number)
  329.     AS SELECT
  330.         EXPAND (owner,         30),
  331.         EXPAND (sequence_name, 30),
  332.         min_value,
  333.         max_value,
  334.         increment_by,
  335.         cycle_flag,
  336.         order_flag,
  337.         cache_size,
  338.         last_number
  339.     FROM sysdd.sequences
  340. *
  341. GRANT ALL ON all_sequences TO PUBLIC WITH GRANT OPTION
  342. *
  343.  
  344. CREATE VIEW all_snapshots
  345.        (owner, name, table_name,
  346.         master_view, master_owner, master, master_link,
  347.         can_use_log, last_refresh, error, type, "NEXT", start_with, query)
  348.   AS SELECT
  349.        EXPAND (owner,            30),
  350.        EXPAND (tablename,        30),
  351.        EXPAND (NULL,             30),
  352.        EXPAND (master_owner,     30),
  353.        EXPAND (master_tablename, 30),
  354.        EXPAND (NULL,             30),
  355.        EXPAND (NULL,             30),
  356.        fast_refreshable,
  357.        TIMESTAMP (NULL, NULL),
  358.        FIXED (NULL),
  359.        'FORCE   ',
  360.        EXPAND (NULL, 254),
  361.        TIMESTAMP (NULL, NULL),
  362.        definition
  363.      FROM sysdd.snapshots
  364. *
  365. GRANT ALL ON all_snapshots TO PUBLIC WITH GRANT OPTION
  366. *
  367.  
  368. CREATE VIEW all_source
  369.       (owner, name, type, line, text)
  370.   AS SELECT
  371.        EXPAND (USER, 30),
  372.        EXPAND (' ',  30),
  373.        EXPAND (' ',  11),
  374.        1,
  375.        EXPAND (' ',  200)
  376.      FROM dual
  377.      WHERE 0 = 1
  378. *
  379. GRANT ALL ON all_source TO PUBLIC WITH GRANT OPTION
  380. *
  381.  
  382. CREATE VIEW all_synonyms
  383.       (owner, synonym_name, table_owner, table_name, db_link)
  384.     AS SELECT
  385.         EXPAND (synonymowner, 30),
  386.         EXPAND (synonymname,  30),
  387.         EXPAND (owner,        30),
  388.         EXPAND (tablename,    30),
  389.         EXPAND (NULL,         30)
  390.       FROM sysdd.db_synonyms
  391.       WHERE synonymowner = USERGROUP OR synonymowner = 'PUBLIC'
  392. *
  393. GRANT ALL ON all_synonyms TO PUBLIC WITH GRANT OPTION
  394. *
  395.  
  396. CREATE VIEW all_tables
  397.       (owner, table_name, tablespace_name, cluster_name,
  398.        pct_free, pct_used, ini_trans, max_trans,
  399.        initial_extent, next_extent, min_extents, max_extents, pct_increase,
  400.        backed_up, num_rows, blocks, empty_blocks, avg_space, chain_cnt,
  401.        avg_row_len)
  402.     AS SELECT
  403.         EXPAND (owner,     30),
  404.         EXPAND (tablename, 30),
  405.         'SYSTEM                        ',
  406.         EXPAND (NULL, 30),
  407.         FIXED (NULL),
  408.         FIXED (NULL),
  409.         FIXED (NULL),
  410.         FIXED (NULL),
  411.         FIXED (NULL),
  412.         FIXED (NULL),
  413.         FIXED (NULL),
  414.         FIXED (NULL),
  415.         FIXED (NULL),
  416.         'N',
  417.         FIXED (NULL),
  418.         FIXED (NULL),
  419.         FIXED (NULL),
  420.         FIXED (NULL),
  421.         FIXED (NULL),
  422.         FIXED (NULL)
  423.       FROM sysdd.tables
  424.         WHERE type = 'TABLE'
  425. *
  426. GRANT ALL ON all_tables TO PUBLIC WITH GRANT OPTION
  427. *
  428.  
  429. CREATE VIEW all_tab_columns
  430.             (owner, table_name, column_name,
  431.             data_type, data_length, data_precision, data_scale,
  432.             nullable, column_id, default_length, data_default,
  433.         num_distinct, low_value, high_value, density)
  434.     AS SELECT
  435.         EXPAND (owner,      30),
  436.         EXPAND (tablename,  30),
  437.         EXPAND (columnname, 30),
  438.         DECODE (datatype, 'CHAR',    DECODE (code, 'BYTE', 'RAW', 'VARCHAR2'),
  439.                           'FLOAT',   DECODE (len, NULL, 'NUMBER', 'FLOAT'),
  440.                           'VARCHAR', 'VARCHAR2',
  441.                                      SUBSTR (datatype, 1, 9)),
  442.         DECODE (datatype, 'NUMBER', 22,
  443.                           'FLOAT',  22,
  444.                           'DATE',    7,
  445.                           'LONG',   28,
  446.                                        len),
  447.         DECODE (datatype, 'NUMBER', len, 'FLOAT', len),
  448.         DECODE (datatype, 'NUMBER', dec),
  449.         DECODE (mod || DECODE ("DEFAULT", NULL, '-NOD'), 'OPT-NOD', 'Y', 'N'),
  450.         columnno,
  451.         DECODE (datatype, 'NUMBER', LENGTH (LTRIM ("DEFAULT")),
  452.                           'FLOAT',  LENGTH (LTRIM ("DEFAULT")),
  453.                                     LENGTH ("DEFAULT"))
  454.         +
  455.         DECODE (mod, 'OPT', 0, 1),
  456.         "DEFAULT",
  457.         distinctvalues,
  458.         NULL,
  459.         NULL,
  460.         FIXED (NULL)
  461.       FROM sysdd.columns
  462. *
  463. GRANT ALL ON all_tab_columns TO PUBLIC WITH GRANT OPTION
  464. *
  465.  
  466. CREATE VIEW all_tab_comments
  467.       (owner, table_name, table_type, comments)
  468.     AS SELECT
  469.         EXPAND (owner,     30),
  470.         EXPAND (tablename, 30),
  471.         EXPAND (type,      11),
  472.         comment_c
  473.     FROM sysdd.tables
  474.       WHERE type = 'TABLE' OR  type = 'VIEW'
  475. *
  476. GRANT ALL ON all_tab_comments TO PUBLIC WITH GRANT OPTION
  477. *
  478.  
  479. CREATE VIEW all_tab_privs
  480.       (grantor, grantee, table_schema, table_name, privilege, grantable)
  481.   AS SELECT
  482.         EXPAND (grantor, 30),
  483.     EXPAND (grantee, 30),
  484.     EXPAND (owner,   30),
  485.         EXPAND (name1,   30),
  486.         RTRIM  (privileges, '+'),
  487.         DECODE (INDEX (privileges, '+'), 0, 'NO', 'YES')
  488.      FROM sysdd.new_privileges
  489.      WHERE name2 IS NULL AND grantor <> grantee
  490. *
  491. GRANT ALL ON all_tab_privs TO PUBLIC WITH GRANT OPTION
  492. *
  493.  
  494. CREATE VIEW all_tab_privs_made
  495.       (grantee, owner, table_name, grantor, privilege, grantable)
  496.   AS SELECT
  497.     EXPAND (grantee, 30),
  498.     EXPAND (owner,   30),
  499.         EXPAND (name1,   30),
  500.         EXPAND (grantor, 30),
  501.         RTRIM  (privileges, '+'),
  502.         DECODE (INDEX (privileges, '+'), 0, 'NO', 'YES')
  503.      FROM sysdd.new_privileges
  504.      WHERE name2 IS NULL AND grantor <> grantee
  505.        AND (grantor = USERGROUP OR owner = USERGROUP)
  506. *
  507. GRANT ALL ON all_tab_privs_made TO PUBLIC WITH GRANT OPTION
  508. *
  509.  
  510. CREATE VIEW all_tab_privs_recd
  511.       (grantee, owner, table_name, grantor, privilege, grantable)
  512.   AS SELECT
  513.     EXPAND (grantee, 30),
  514.     EXPAND (owner,   30),
  515.         EXPAND (name1,   30),
  516.         EXPAND (grantor, 30),
  517.         RTRIM  (privileges, '+'),
  518.         DECODE (INDEX (privileges, '+'), 0, 'NO', 'YES')
  519.      FROM sysdd.new_privileges
  520.      WHERE name2 IS NULL AND grantor <> grantee
  521.        AND (grantee = USERGROUP OR grantee = 'PUBLIC')
  522. *
  523. GRANT ALL ON all_tab_privs_recd TO PUBLIC WITH GRANT OPTION
  524. *
  525.  
  526. CREATE VIEW all_triggers
  527.       (owner, trigger_name, trigger_type, triggering_event,
  528.        table_owner, table_name, referencing_names, when_clause,
  529.        status, description, trigger_body)
  530.   AS SELECT
  531.        EXPAND (owner,       30),
  532.        EXPAND (triggername, 30),
  533.        'AFTER EACH ROW  ',
  534.        DECODE (SUBSTR (insert, 1, 1) ||
  535.                SUBSTR (update, 1, 1) ||
  536.                SUBSTR (delete, 1, 1),
  537.                'YNN', 'INSERT',
  538.            'NYN', 'UPDATE',
  539.            'NNY', 'DELETE',
  540.            'YYN', 'INSERT OR UPDATE',
  541.            'YNY', 'INSERT OR DELETE',
  542.            'NYY', 'UPDATE OR DELETE',
  543.            'YYY', 'INSERT OR UPDATE OR DELETE',
  544.                       'ERROR'),
  545.        EXPAND (owner,     30),
  546.        EXPAND (tablename, 30),
  547.        EXPAND (NULL,      87),
  548.        EXPAND (NULL,      200),
  549.        'ENABLED ',
  550.        definition_c,
  551.        NULL
  552.      FROM sysdd.triggers
  553. *
  554. GRANT ALL ON all_triggers TO PUBLIC WITH GRANT OPTION
  555. *
  556.  
  557. CREATE VIEW all_trigger_cols
  558.       (trigger_owner, trigger_name,
  559.        table_owner, table_name, column_name, column_list, column_usage)
  560.   AS SELECT
  561.        EXPAND (' ', 30),
  562.        EXPAND (' ', 30),
  563.        EXPAND (' ', 30),
  564.        EXPAND (' ', 30),
  565.        EXPAND (' ', 30),
  566.        'NO ',
  567.        EXPAND (' ', 17)
  568.      FROM dual
  569.      WHERE 0 = 1
  570. *
  571. GRANT ALL ON all_trigger_cols TO PUBLIC WITH GRANT OPTION
  572. *
  573.  
  574. CREATE VIEW all_users
  575.       (username, user_id, created)
  576.     AS SELECT
  577.         EXPAND (username, 30),
  578.         user_id,
  579.         TIMESTAMP ("DATE", "TIME")
  580.     FROM sysdd.users
  581. *
  582. GRANT ALL ON all_users TO PUBLIC WITH GRANT OPTION
  583. *
  584.  
  585. CREATE VIEW all_views
  586.       (owner, view_name, text_length, text)
  587.     AS SELECT
  588.         EXPAND (owner,     30),
  589.         EXPAND (tablename, 30),
  590.         len,
  591.         definition
  592.     FROM sysdd.views
  593. *
  594. GRANT ALL ON all_views TO PUBLIC WITH GRANT OPTION
  595. *
  596.  
  597. CREATE TABLE audit_actions
  598.       (action FLOAT (18) NOT NULL,
  599.        name   CHAR  (27) NOT NULL
  600.       )
  601. *
  602. GRANT SELECT ON audit_actions TO PUBLIC WITH GRANT OPTION
  603. *
  604. INSERT INTO audit_actions VALUES (0,  'UNKNOWN')
  605. *
  606. INSERT INTO audit_actions VALUES (1,  'CREATE TABLE')
  607. *
  608. INSERT INTO audit_actions VALUES (2,  'INSERT')
  609. *
  610. INSERT INTO audit_actions VALUES (3,  'SELECT')
  611. *
  612. INSERT INTO audit_actions VALUES (4,  'CREATE CLUSTER')
  613. *
  614. INSERT INTO audit_actions VALUES (5,  'ALTER CLUSTER')
  615. *
  616. INSERT INTO audit_actions VALUES (6,  'UPDATE')
  617. *
  618. INSERT INTO audit_actions VALUES (7,  'DELETE')
  619. *
  620. INSERT INTO audit_actions VALUES (8,  'DROP CLUSTER')
  621. *
  622. INSERT INTO audit_actions VALUES (9,  'CREATE INDEX')
  623. *
  624. INSERT INTO audit_actions VALUES (10, 'DROP INDEX')
  625. *
  626. INSERT INTO audit_actions VALUES (11, 'ALTER INDEX')
  627. *
  628. INSERT INTO audit_actions VALUES (12, 'DROP TABLE')
  629. *
  630. INSERT INTO audit_actions VALUES (13, 'CREATE SEQUENCE')
  631. *
  632. INSERT INTO audit_actions VALUES (14, 'ALTER SEQUENCE')
  633. *
  634. INSERT INTO audit_actions VALUES (15, 'ALTER TABLE')
  635. *
  636. INSERT INTO audit_actions VALUES (16, 'DROP SEQUENCE')
  637. *
  638. INSERT INTO audit_actions VALUES (17, 'GRANT OBJECT')
  639. *
  640. INSERT INTO audit_actions VALUES (18, 'REVOKE OBJECT')
  641. *
  642. INSERT INTO audit_actions VALUES (19, 'CREATE SYNONYM')
  643. *
  644. INSERT INTO audit_actions VALUES (20, 'DROP SYNONYM')
  645. *
  646. INSERT INTO audit_actions VALUES (21, 'CREATE VIEW')
  647. *
  648. INSERT INTO audit_actions VALUES (22, 'DROP VIEW')
  649. *
  650. INSERT INTO audit_actions VALUES (23, 'VALIDATE INDEX')
  651. *
  652. INSERT INTO audit_actions VALUES (26, 'LOCK')
  653. *
  654. INSERT INTO audit_actions VALUES (27, 'UNDEFINED')
  655. *
  656. INSERT INTO audit_actions VALUES (28, 'RENAME')
  657. *
  658. INSERT INTO audit_actions VALUES (29, 'COMMENT')
  659. *
  660. INSERT INTO audit_actions VALUES (30, 'AUDIT OBJECT')
  661. *
  662. INSERT INTO audit_actions VALUES (31, 'NOAUDIT OBJECT')
  663. *
  664. INSERT INTO audit_actions VALUES (32, 'CREATE DATABASE LINK')
  665. *
  666. INSERT INTO audit_actions VALUES (33, 'DROP DATABASE LINK')
  667. *
  668. INSERT INTO audit_actions VALUES (34, 'CREATE DATABASE')
  669. *
  670. INSERT INTO audit_actions VALUES (35, 'ALTER DATABASE')
  671. *
  672. INSERT INTO audit_actions VALUES (36, 'CREATE ROLLBACK SEG')
  673. *
  674. INSERT INTO audit_actions VALUES (37, 'ALTER ROLLBACK SEG')
  675. *
  676. INSERT INTO audit_actions VALUES (38, 'DROP ROLLBACK SEG')
  677. *
  678. INSERT INTO audit_actions VALUES (39, 'CREATE TABLESPACE')
  679. *
  680. INSERT INTO audit_actions VALUES (40, 'ALTER TABLESPACE')
  681. *
  682. INSERT INTO audit_actions VALUES (41, 'DROP TABLESPACE')
  683. *
  684. INSERT INTO audit_actions VALUES (42, 'ALTER SESSION')
  685. *
  686. INSERT INTO audit_actions VALUES (43, 'ALTER USER')
  687. *
  688. INSERT INTO audit_actions VALUES (49, 'ALTER SYSTEM')
  689. *
  690. INSERT INTO audit_actions VALUES (60, 'LOGON')
  691. *
  692. INSERT INTO audit_actions VALUES (61, 'LOGOFF')
  693. *
  694. INSERT INTO audit_actions VALUES (62, 'CLEANUP')
  695. *
  696. INSERT INTO audit_actions VALUES (63, 'SESSION')
  697. *
  698. INSERT INTO audit_actions VALUES (64, 'AUDIT SYSTEM')
  699. *
  700. INSERT INTO audit_actions VALUES (65, 'NOAUDIT SYSTEM')
  701. *
  702. INSERT INTO audit_actions VALUES (66, 'AUDIT DEFAULT')
  703. *
  704. INSERT INTO audit_actions VALUES (67, 'NOAUDIT DEFAULT')
  705. *
  706. INSERT INTO audit_actions VALUES (68, 'GRANT SYSTEM')
  707. *
  708. INSERT INTO audit_actions VALUES (69, 'REVOKE SYSTEM')
  709. *
  710. INSERT INTO audit_actions VALUES (70, 'CREATE PUBLIC SYNONYM')
  711. *
  712. INSERT INTO audit_actions VALUES (71, 'DROP PUBLIC SYNONYM')
  713. *
  714. INSERT INTO audit_actions VALUES (72, 'CREATE PUBLIC DATABASE LINK')
  715. *
  716. INSERT INTO audit_actions VALUES (73, 'DROP PUBLIC DATABASE LINK')
  717. *
  718. INSERT INTO audit_actions VALUES (80, 'USER COMMENT')
  719. *
  720.  
  721. CREATE VIEW column_privileges
  722.       (grantee, owner, table_name, column_name, grantor, insert_priv,
  723.        update_priv, references_priv, created)
  724.     AS SELECT
  725.         EXPAND (grantee, 30),
  726.         EXPAND (owner,   30),
  727.         EXPAND (name1,   30),
  728.         EXPAND (name2,   30),
  729.         EXPAND (grantor, 30),
  730.         DECODE (INDEX (privileges, 'INS'), 0, 'N',
  731.                    DECODE (INDEX (privileges, 'INS+'), 0, 'Y', 'G')),
  732.         DECODE (INDEX (privileges, 'UPD'), 0, 'N',
  733.                    DECODE (INDEX (privileges, 'UPD+'), 0, 'Y', 'G')),
  734.         DECODE (INDEX (privileges, 'REF'), 0, 'N',
  735.                    DECODE (INDEX (privileges, 'REF+'), 0, 'Y', 'G')),
  736.         TIMESTAMP ("DATE", "TIME")
  737.     FROM sysdd.privileges
  738.       WHERE name2 IS NOT NULL AND grantor <> grantee
  739. *
  740. GRANT ALL ON column_privileges TO PUBLIC WITH GRANT OPTION
  741. *
  742.  
  743. CREATE VIEW dictionary (table_name, comments)
  744. AS SELECT
  745.      EXPAND (tablename, 30),
  746.      comment_c
  747.   FROM sysdd.tables
  748.   WHERE owner = 'SYS'
  749.     AND (   tablename LIKE 'USER%'
  750.          OR tablename LIKE 'ALL%'
  751.          OR tablename LIKE 'DBA%'
  752.          OR tablename IN ('AUDIT_ACTIONS', 'COLUMN_PRIVILEGES', 'DICTIONARY',
  753.                           'DICT_COLUMNS', 'DUAL', 'GLOBAL_NAME',
  754.                           'INDEX_HISTOGRAM', 'INDEX_STATS', 'RESOURCE_COST',
  755.                           'ROLE_ROLE_PRIVS', 'ROLE_SYS_PRIVS',
  756.                           'ROLE_TAB_PRIVS', 'SESSION_PRIVS', 'SESSION_ROLES',
  757.                           'TABLE_PRIVILEGES'))
  758. *
  759. GRANT ALL ON dictionary TO PUBLIC WITH GRANT OPTION
  760. *
  761.  
  762. CREATE VIEW dict_columns (table_name, column_name, comments)
  763. AS SELECT
  764.      EXPAND (tablename,  30),
  765.      EXPAND (columnname, 30),
  766.      comment_c
  767.   FROM sysdd.columns
  768.   WHERE owner = 'SYS'
  769.     AND (   tablename LIKE 'USER%'
  770.          OR tablename LIKE 'ALL%'
  771.          OR tablename LIKE 'DBA%'
  772.          OR tablename IN ('AUDIT_ACTIONS', 'DICTIONARY', 'DICT_COLUMNS',
  773.                            'DUAL'))
  774. *
  775. GRANT ALL ON dict_columns TO PUBLIC WITH GRANT OPTION
  776. *
  777.  
  778. CREATE VIEW exceptions
  779.       (row_id, owner, table_name, "CONSTRAINT")
  780.   AS SELECT
  781.        1,
  782.        EXPAND (USER, 30),
  783.        EXPAND (' ',  30),
  784.        EXPAND (' ',  30)
  785.      FROM dual
  786.      WHERE 0 = 1
  787. *
  788. GRANT ALL ON exceptions TO PUBLIC WITH GRANT OPTION
  789. *
  790.  
  791. CREATE VIEW global_name
  792.       (global_name)
  793.   AS SELECT s.serverdb || '.' || s.servernode
  794.        FROM sysdd.users u, sysdd.serverdbs s
  795.        WHERE u.username = SYSDBA AND u.serverdb = s.serverdb
  796. *
  797. GRANT ALL ON global_name TO PUBLIC WITH GRANT OPTION
  798. *
  799.  
  800. CREATE VIEW public_dependency
  801.       (object_id, referenced_object_id)
  802.   AS SELECT
  803.        o.tableid,
  804.        d.tableid
  805.      FROM sysdd.tables o, sysdd.tables d, sysdd.view_uses_table v
  806.      WHERE v.owner   = o.owner AND v.tablename    = o.tablename
  807.        AND v.refname = d.owner AND v.reftablename = d.tablename
  808. *
  809. GRANT ALL ON public_dependency TO PUBLIC WITH GRANT OPTION
  810. *
  811.  
  812. CREATE VIEW resource_cost
  813.       (resource_name, unit_cost)
  814.   AS SELECT
  815.        EXPAND (' ', 32),
  816.        0
  817.      FROM dual
  818.      WHERE 0 = 1
  819. *
  820. GRANT ALL ON resource_cost TO PUBLIC WITH GRANT OPTION
  821. *
  822.  
  823. CREATE VIEW role_role_privs
  824.       (role, granted_role, admin_option)
  825.   AS SELECT
  826.        EXPAND (USER, 30),
  827.        EXPAND (USER, 30),
  828.        'NO '
  829.      FROM dual
  830.      WHERE 0 = 1
  831. *
  832. GRANT ALL ON role_role_privs TO PUBLIC WITH GRANT OPTION
  833. *
  834.  
  835. CREATE VIEW role_sys_privs
  836.       (role, privilege, admin_option)
  837.   AS SELECT
  838.        EXPAND (USER, 30),
  839.        EXPAND (' ',  40),
  840.        'NO '
  841.      FROM dual
  842.      WHERE 0 = 1
  843. *
  844. GRANT ALL ON role_sys_privs TO PUBLIC WITH GRANT OPTION
  845. *
  846.  
  847. CREATE VIEW role_tab_privs
  848.       (role, owner, table_name, column_name, privilege, grantable)
  849.   AS SELECT
  850.        EXPAND (USER, 30),
  851.        EXPAND (USER, 30),
  852.        EXPAND (' ',  30),
  853.        EXPAND (' ',  30),
  854.        EXPAND (' ',  30),
  855.        'NO '
  856.      FROM dual
  857.      WHERE 0 = 1
  858. *
  859. GRANT ALL ON role_tab_privs TO PUBLIC WITH GRANT OPTION
  860. *
  861.  
  862. CREATE TABLE role_privs (
  863.   usermode  CHAR(11),
  864.   privilege CHAR(40)
  865. )
  866. *
  867.  
  868. INSERT INTO role_privs VALUES ('STANDARD', 'CREATE SESSION')
  869. *
  870. INSERT INTO role_privs VALUES ('STANDARD', 'ALTER SESSION')
  871. *
  872. INSERT INTO role_privs VALUES ('STANDARD', 'CREATE TABLE')
  873. *
  874. INSERT INTO role_privs VALUES ('STANDARD', 'CREATE CLUSTER')
  875. *
  876. INSERT INTO role_privs VALUES ('STANDARD', 'CREATE SYNONYM')
  877. *
  878. INSERT INTO role_privs VALUES ('STANDARD', 'CREATE VIEW')
  879. *
  880. INSERT INTO role_privs VALUES ('STANDARD', 'CREATE SEQUENCE')
  881. *
  882. INSERT INTO role_privs VALUES ('STANDARD', 'CREATE DATABASE LINK')
  883. *
  884. INSERT INTO role_privs VALUES ('RESOURCE', 'CREATE SESSION')
  885. *
  886. INSERT INTO role_privs VALUES ('RESOURCE', 'ALTER SESSION')
  887. *
  888. INSERT INTO role_privs VALUES ('RESOURCE', 'UNLIMITED TABLESPACE')
  889. *
  890. INSERT INTO role_privs VALUES ('RESOURCE', 'CREATE TABLE')
  891. *
  892. INSERT INTO role_privs VALUES ('RESOURCE', 'CREATE CLUSTER')
  893. *
  894. INSERT INTO role_privs VALUES ('RESOURCE', 'CREATE SYNONYM')
  895. *
  896. INSERT INTO role_privs VALUES ('RESOURCE', 'CREATE VIEW')
  897. *
  898. INSERT INTO role_privs VALUES ('RESOURCE', 'CREATE SEQUENCE')
  899. *
  900. INSERT INTO role_privs VALUES ('RESOURCE', 'CREATE DATABASE LINK')
  901. *
  902. INSERT INTO role_privs VALUES ('RESOURCE', 'CREATE PROCEDURE')
  903. *
  904. INSERT INTO role_privs VALUES ('RESOURCE', 'CREATE TRIGGER')
  905. *
  906. INSERT INTO role_privs VALUES ('DBA',      'ALTER SYSTEM')
  907. *
  908. INSERT INTO role_privs VALUES ('DBA',      'AUDIT SYSTEM')
  909. *
  910. INSERT INTO role_privs VALUES ('DBA',      'CREATE SESSION')
  911. *
  912. INSERT INTO role_privs VALUES ('DBA',      'ALTER SESSION')
  913. *
  914. INSERT INTO role_privs VALUES ('DBA',      'RESTRICTED SESSION')
  915. *
  916. INSERT INTO role_privs VALUES ('DBA',      'CREATE TABLESPACE')
  917. *
  918. INSERT INTO role_privs VALUES ('DBA',      'ALTER TABLESPACE')
  919. *
  920. INSERT INTO role_privs VALUES ('DBA',      'MANAGE TABLESPACE')
  921. *
  922. INSERT INTO role_privs VALUES ('DBA',      'DROP TABLESPACE')
  923. *
  924. INSERT INTO role_privs VALUES ('DBA',      'UNLIMITED TABLESPACE')
  925. *
  926. INSERT INTO role_privs VALUES ('DBA',      'CREATE USER')
  927. *
  928. INSERT INTO role_privs VALUES ('DBA',      'BECOME USER')
  929. *
  930. INSERT INTO role_privs VALUES ('DBA',      'ALTER USER')
  931. *
  932. INSERT INTO role_privs VALUES ('DBA',      'DROP USER')
  933. *
  934. INSERT INTO role_privs VALUES ('DBA',      'CREATE ROLLBACK SEGMENT')
  935. *
  936. INSERT INTO role_privs VALUES ('DBA',      'ALTER ROLLBACK SEGMENT')
  937. *
  938. INSERT INTO role_privs VALUES ('DBA',      'DROP ROLLBACK SEGMENT')
  939. *
  940. INSERT INTO role_privs VALUES ('DBA',      'CREATE TABLE')
  941. *
  942. INSERT INTO role_privs VALUES ('DBA',      'CREATE ANY TABLE')
  943. *
  944. INSERT INTO role_privs VALUES ('DBA',      'ALTER ANY TABLE')
  945. *
  946. INSERT INTO role_privs VALUES ('DBA',      'BACKUP ANY TABLE')
  947. *
  948. INSERT INTO role_privs VALUES ('DBA',      'DROP ANY TABLE')
  949. *
  950. INSERT INTO role_privs VALUES ('DBA',      'LOCK ANY TABLE')
  951. *
  952. INSERT INTO role_privs VALUES ('DBA',      'COMMENT ANY TABLE')
  953. *
  954. INSERT INTO role_privs VALUES ('DBA',      'SELECT ANY TABLE')
  955. *
  956. INSERT INTO role_privs VALUES ('DBA',      'INSERT ANY TABLE')
  957. *
  958. INSERT INTO role_privs VALUES ('DBA',      'UPDATE ANY TABLE')
  959. *
  960. INSERT INTO role_privs VALUES ('DBA',      'DELETE ANY TABLE')
  961. *
  962. INSERT INTO role_privs VALUES ('DBA',      'CREATE CLUSTER')
  963. *
  964. INSERT INTO role_privs VALUES ('DBA',      'CREATE ANY CLUSTER')
  965. *
  966. INSERT INTO role_privs VALUES ('DBA',      'ALTER ANY CLUSTER')
  967. *
  968. INSERT INTO role_privs VALUES ('DBA',      'DROP ANY CLUSTER')
  969. *
  970. INSERT INTO role_privs VALUES ('DBA',      'CREATE ANY INDEX')
  971. *
  972. INSERT INTO role_privs VALUES ('DBA',      'ALTER ANY INDEX')
  973. *
  974. INSERT INTO role_privs VALUES ('DBA',      'DROP ANY INDEX')
  975. *
  976. INSERT INTO role_privs VALUES ('DBA',      'CREATE SYNONYM')
  977. *
  978. INSERT INTO role_privs VALUES ('DBA',      'CREATE ANY SYNONYM')
  979. *
  980. INSERT INTO role_privs VALUES ('DBA',      'DROP ANY SYNONYM')
  981. *
  982. INSERT INTO role_privs VALUES ('DBA',      'CREATE PUBLIC SYNONYM')
  983. *
  984. INSERT INTO role_privs VALUES ('DBA',      'DROP PUBLIC SYNONYM')
  985. *
  986. INSERT INTO role_privs VALUES ('DBA',      'CREATE VIEW')
  987. *
  988. INSERT INTO role_privs VALUES ('DBA',      'CREATE ANY VIEW')
  989. *
  990. INSERT INTO role_privs VALUES ('DBA',      'DROP ANY VIEW')
  991. *
  992. INSERT INTO role_privs VALUES ('DBA',      'CREATE SEQUENCE')
  993. *
  994. INSERT INTO role_privs VALUES ('DBA',      'CREATE ANY SEQUENCE')
  995. *
  996. INSERT INTO role_privs VALUES ('DBA',      'ALTER ANY SEQUENCE')
  997. *
  998. INSERT INTO role_privs VALUES ('DBA',      'DROP ANY SEQUENCE')
  999. *
  1000. INSERT INTO role_privs VALUES ('DBA',      'SELECT ANY SEQUENCE')
  1001. *
  1002. INSERT INTO role_privs VALUES ('DBA',      'CREATE DATABASE LINK')
  1003. *
  1004. INSERT INTO role_privs VALUES ('DBA',      'CREATE PUBLIC DATABASE LINK')
  1005. *
  1006. INSERT INTO role_privs VALUES ('DBA',      'DROP PUBLIC DATABASE LINK')
  1007. *
  1008. INSERT INTO role_privs VALUES ('DBA',      'CREATE ROLE')
  1009. *
  1010. INSERT INTO role_privs VALUES ('DBA',      'DROP ANY ROLE')
  1011. *
  1012. INSERT INTO role_privs VALUES ('DBA',      'GRANT ANY ROLE')
  1013. *
  1014. INSERT INTO role_privs VALUES ('DBA',      'ALTER ANY ROLE')
  1015. *
  1016. INSERT INTO role_privs VALUES ('DBA',      'AUDIT ANY')
  1017. *
  1018. INSERT INTO role_privs VALUES ('DBA',      'ALTER DATABASE')
  1019. *
  1020. INSERT INTO role_privs VALUES ('DBA',      'FORCE TRANSACTION')
  1021. *
  1022. INSERT INTO role_privs VALUES ('DBA',      'FORCE ANY TRANSACTION')
  1023. *
  1024. INSERT INTO role_privs VALUES ('DBA',      'CREATE PROCEDURE')
  1025. *
  1026. INSERT INTO role_privs VALUES ('DBA',      'CREATE ANY PROCEDURE')
  1027. *
  1028. INSERT INTO role_privs VALUES ('DBA',      'ALTER ANY PROCEDURE')
  1029. *
  1030. INSERT INTO role_privs VALUES ('DBA',      'DROP ANY PROCEDURE')
  1031. *
  1032. INSERT INTO role_privs VALUES ('DBA',      'EXECUTE ANY PROCEDURE')
  1033. *
  1034. INSERT INTO role_privs VALUES ('DBA',      'CREATE TRIGGER')
  1035. *
  1036. INSERT INTO role_privs VALUES ('DBA',      'CREATE ANY TRIGGER')
  1037. *
  1038. INSERT INTO role_privs VALUES ('DBA',      'ALTER ANY TRIGGER')
  1039. *
  1040. INSERT INTO role_privs VALUES ('DBA',      'DROP ANY TRIGGER')
  1041. *
  1042. INSERT INTO role_privs VALUES ('DBA',      'CREATE PROFILE')
  1043. *
  1044. INSERT INTO role_privs VALUES ('DBA',      'ALTER PROFILE')
  1045. *
  1046. INSERT INTO role_privs VALUES ('DBA',      'DROP PROFILE')
  1047. *
  1048. INSERT INTO role_privs VALUES ('DBA',      'ALTER RESOURCE COST')
  1049. *
  1050. INSERT INTO role_privs VALUES ('DBA',      'ANALYZE ANY')
  1051. *
  1052. INSERT INTO role_privs VALUES ('DBA',      'GRANT ANY PRIVILEGE')
  1053. *
  1054. INSERT INTO role_privs VALUES ('DBA',      'CREATE SNAPSHOT')
  1055. *
  1056. INSERT INTO role_privs VALUES ('DBA',      'CREATE ANY SNAPSHOT')
  1057. *
  1058. INSERT INTO role_privs VALUES ('DBA',      'ALTER ANY SNAPSHOT')
  1059. *
  1060. INSERT INTO role_privs VALUES ('DBA',      'DROP ANY SNAPSHOT')
  1061. *
  1062. INSERT INTO role_privs VALUES ('SYSDBA',   'ALTER SYSTEM')
  1063. *
  1064. INSERT INTO role_privs VALUES ('SYSDBA',   'AUDIT SYSTEM')
  1065. *
  1066. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE SESSION')
  1067. *
  1068. INSERT INTO role_privs VALUES ('SYSDBA',   'ALTER SESSION')
  1069. *
  1070. INSERT INTO role_privs VALUES ('SYSDBA',   'RESTRICTED SESSION')
  1071. *
  1072. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE TABLESPACE')
  1073. *
  1074. INSERT INTO role_privs VALUES ('SYSDBA',   'ALTER TABLESPACE')
  1075. *
  1076. INSERT INTO role_privs VALUES ('SYSDBA',   'MANAGE TABLESPACE')
  1077. *
  1078. INSERT INTO role_privs VALUES ('SYSDBA',   'DROP TABLESPACE')
  1079. *
  1080. INSERT INTO role_privs VALUES ('SYSDBA',   'UNLIMITED TABLESPACE')
  1081. *
  1082. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE USER')
  1083. *
  1084. INSERT INTO role_privs VALUES ('SYSDBA',   'BECOME USER')
  1085. *
  1086. INSERT INTO role_privs VALUES ('SYSDBA',   'ALTER USER')
  1087. *
  1088. INSERT INTO role_privs VALUES ('SYSDBA',   'DROP USER')
  1089. *
  1090. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE ROLLBACK SEGMENT')
  1091. *
  1092. INSERT INTO role_privs VALUES ('SYSDBA',   'ALTER ROLLBACK SEGMENT')
  1093. *
  1094. INSERT INTO role_privs VALUES ('SYSDBA',   'DROP ROLLBACK SEGMENT')
  1095. *
  1096. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE TABLE')
  1097. *
  1098. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE ANY TABLE')
  1099. *
  1100. INSERT INTO role_privs VALUES ('SYSDBA',   'ALTER ANY TABLE')
  1101. *
  1102. INSERT INTO role_privs VALUES ('SYSDBA',   'BACKUP ANY TABLE')
  1103. *
  1104. INSERT INTO role_privs VALUES ('SYSDBA',   'DROP ANY TABLE')
  1105. *
  1106. INSERT INTO role_privs VALUES ('SYSDBA',   'LOCK ANY TABLE')
  1107. *
  1108. INSERT INTO role_privs VALUES ('SYSDBA',   'COMMENT ANY TABLE')
  1109. *
  1110. INSERT INTO role_privs VALUES ('SYSDBA',   'SELECT ANY TABLE')
  1111. *
  1112. INSERT INTO role_privs VALUES ('SYSDBA',   'INSERT ANY TABLE')
  1113. *
  1114. INSERT INTO role_privs VALUES ('SYSDBA',   'UPDATE ANY TABLE')
  1115. *
  1116. INSERT INTO role_privs VALUES ('SYSDBA',   'DELETE ANY TABLE')
  1117. *
  1118. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE CLUSTER')
  1119. *
  1120. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE ANY CLUSTER')
  1121. *
  1122. INSERT INTO role_privs VALUES ('SYSDBA',   'ALTER ANY CLUSTER')
  1123. *
  1124. INSERT INTO role_privs VALUES ('SYSDBA',   'DROP ANY CLUSTER')
  1125. *
  1126. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE ANY INDEX')
  1127. *
  1128. INSERT INTO role_privs VALUES ('SYSDBA',   'ALTER ANY INDEX')
  1129. *
  1130. INSERT INTO role_privs VALUES ('SYSDBA',   'DROP ANY INDEX')
  1131. *
  1132. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE SYNONYM')
  1133. *
  1134. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE ANY SYNONYM')
  1135. *
  1136. INSERT INTO role_privs VALUES ('SYSDBA',   'DROP ANY SYNONYM')
  1137. *
  1138. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE PUBLIC SYNONYM')
  1139. *
  1140. INSERT INTO role_privs VALUES ('SYSDBA',   'DROP PUBLIC SYNONYM')
  1141. *
  1142. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE VIEW')
  1143. *
  1144. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE ANY VIEW')
  1145. *
  1146. INSERT INTO role_privs VALUES ('SYSDBA',   'DROP ANY VIEW')
  1147. *
  1148. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE SEQUENCE')
  1149. *
  1150. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE ANY SEQUENCE')
  1151. *
  1152. INSERT INTO role_privs VALUES ('SYSDBA',   'ALTER ANY SEQUENCE')
  1153. *
  1154. INSERT INTO role_privs VALUES ('SYSDBA',   'DROP ANY SEQUENCE')
  1155. *
  1156. INSERT INTO role_privs VALUES ('SYSDBA',   'SELECT ANY SEQUENCE')
  1157. *
  1158. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE DATABASE LINK')
  1159. *
  1160. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE PUBLIC DATABASE LINK')
  1161. *
  1162. INSERT INTO role_privs VALUES ('SYSDBA',   'DROP PUBLIC DATABASE LINK')
  1163. *
  1164. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE ROLE')
  1165. *
  1166. INSERT INTO role_privs VALUES ('SYSDBA',   'DROP ANY ROLE')
  1167. *
  1168. INSERT INTO role_privs VALUES ('SYSDBA',   'GRANT ANY ROLE')
  1169. *
  1170. INSERT INTO role_privs VALUES ('SYSDBA',   'ALTER ANY ROLE')
  1171. *
  1172. INSERT INTO role_privs VALUES ('SYSDBA',   'AUDIT ANY')
  1173. *
  1174. INSERT INTO role_privs VALUES ('SYSDBA',   'ALTER DATABASE')
  1175. *
  1176. INSERT INTO role_privs VALUES ('SYSDBA',   'FORCE TRANSACTION')
  1177. *
  1178. INSERT INTO role_privs VALUES ('SYSDBA',   'FORCE ANY TRANSACTION')
  1179. *
  1180. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE PROCEDURE')
  1181. *
  1182. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE ANY PROCEDURE')
  1183. *
  1184. INSERT INTO role_privs VALUES ('SYSDBA',   'ALTER ANY PROCEDURE')
  1185. *
  1186. INSERT INTO role_privs VALUES ('SYSDBA',   'DROP ANY PROCEDURE')
  1187. *
  1188. INSERT INTO role_privs VALUES ('SYSDBA',   'EXECUTE ANY PROCEDURE')
  1189. *
  1190. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE TRIGGER')
  1191. *
  1192. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE ANY TRIGGER')
  1193. *
  1194. INSERT INTO role_privs VALUES ('SYSDBA',   'ALTER ANY TRIGGER')
  1195. *
  1196. INSERT INTO role_privs VALUES ('SYSDBA',   'DROP ANY TRIGGER')
  1197. *
  1198. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE PROFILE')
  1199. *
  1200. INSERT INTO role_privs VALUES ('SYSDBA',   'ALTER PROFILE')
  1201. *
  1202. INSERT INTO role_privs VALUES ('SYSDBA',   'DROP PROFILE')
  1203. *
  1204. INSERT INTO role_privs VALUES ('SYSDBA',   'ALTER RESOURCE COST')
  1205. *
  1206. INSERT INTO role_privs VALUES ('SYSDBA',   'ANALYZE ANY')
  1207. *
  1208. INSERT INTO role_privs VALUES ('SYSDBA',   'GRANT ANY PRIVILEGE')
  1209. *
  1210. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE SNAPSHOT')
  1211. *
  1212. INSERT INTO role_privs VALUES ('SYSDBA',   'CREATE ANY SNAPSHOT')
  1213. *
  1214. INSERT INTO role_privs VALUES ('SYSDBA',   'ALTER ANY SNAPSHOT')
  1215. *
  1216. INSERT INTO role_privs VALUES ('SYSDBA',   'DROP ANY SNAPSHOT')
  1217. *
  1218.  
  1219. CREATE VIEW session_privs AS
  1220.  SELECT privilege FROM sys.role_privs, sysdd.users
  1221.    WHERE users.usermode = role_privs.usermode
  1222.      AND users.username = USERGROUP
  1223. *
  1224. GRANT SELECT ON session_privs TO PUBLIC WITH GRANT OPTION
  1225. *
  1226.  
  1227. CREATE VIEW session_roles
  1228.       (role)
  1229.   AS SELECT
  1230.        EXPAND (USER, 30)
  1231.      FROM dual
  1232.      WHERE 0 = 1
  1233. *
  1234. GRANT ALL ON session_roles TO PUBLIC WITH GRANT OPTION
  1235. *
  1236.  
  1237. CREATE TABLE stmt_audit_option_map
  1238.       ("OPTION#" FLOAT (18) NOT NULL,
  1239.        name      CHAR (40)  NOT NULL
  1240.       )
  1241. *
  1242. GRANT SELECT ON stmt_audit_option_map TO PUBLIC WITH GRANT OPTION
  1243. *
  1244. INSERT INTO stmt_audit_option_map VALUES (3,   'ALTER SYSTEM')
  1245. *
  1246. INSERT INTO stmt_audit_option_map VALUES (4,   'SYSTEM AUDIT')
  1247. *
  1248. INSERT INTO stmt_audit_option_map VALUES (5,   'CREATE SESSION')
  1249. *
  1250. INSERT INTO stmt_audit_option_map VALUES (6,   'ALTER SESSION')
  1251. *
  1252. INSERT INTO stmt_audit_option_map VALUES (7,   'RESTRICTED SESSION')
  1253. *
  1254. INSERT INTO stmt_audit_option_map VALUES (8,   'TABLE')
  1255. *
  1256. INSERT INTO stmt_audit_option_map VALUES (9,   'CLUSTER')
  1257. *
  1258. INSERT INTO stmt_audit_option_map VALUES (10,  'CREATE TABLESPACE')
  1259. *
  1260. INSERT INTO stmt_audit_option_map VALUES (11,  'ALTER TABLESPACE')
  1261. *
  1262. INSERT INTO stmt_audit_option_map VALUES (12,  'MANAGE TABLESPACE')
  1263. *
  1264. INSERT INTO stmt_audit_option_map VALUES (13,  'DROP TABLESPACE')
  1265. *
  1266. INSERT INTO stmt_audit_option_map VALUES (14,  'TABLESPACE')
  1267. *
  1268. INSERT INTO stmt_audit_option_map VALUES (15,  'UNLIMITED TABLESPACE')
  1269. *
  1270. INSERT INTO stmt_audit_option_map VALUES (16,  'USER')
  1271. *
  1272. INSERT INTO stmt_audit_option_map VALUES (17,  'ROLLBACK SEGMENT')
  1273. *
  1274. INSERT INTO stmt_audit_option_map VALUES (18,  'CLASS')
  1275. *
  1276. INSERT INTO stmt_audit_option_map VALUES (19,  'INDEX')
  1277. *
  1278. INSERT INTO stmt_audit_option_map VALUES (20,  'CREATE USER')
  1279. *
  1280. INSERT INTO stmt_audit_option_map VALUES (21,  'BECOME USER')
  1281. *
  1282. INSERT INTO stmt_audit_option_map VALUES (22,  'ALTER USER')
  1283. *
  1284. INSERT INTO stmt_audit_option_map VALUES (23,  'DROP USER')
  1285. *
  1286. INSERT INTO stmt_audit_option_map VALUES (24,  'SYNONYM')
  1287. *
  1288. INSERT INTO stmt_audit_option_map VALUES (25,  'PUBLIC SYNONYM')
  1289. *
  1290. INSERT INTO stmt_audit_option_map VALUES (26,  'VIEW')
  1291. *
  1292. INSERT INTO stmt_audit_option_map VALUES (27,  'SEQUENCE')
  1293. *
  1294. INSERT INTO stmt_audit_option_map VALUES (28,  'DATABASE LINK')
  1295. *
  1296. INSERT INTO stmt_audit_option_map VALUES (29,  'PUBLIC DATABASE LINK')
  1297. *
  1298. INSERT INTO stmt_audit_option_map VALUES (30,  'CREATE ROLLBACK SEGMENT')
  1299. *
  1300. INSERT INTO stmt_audit_option_map VALUES (31,  'ALTER ROLLBACK SEGMENT')
  1301. *
  1302. INSERT INTO stmt_audit_option_map VALUES (32,  'DROP ROLLBACK SEGMENT')
  1303. *
  1304. INSERT INTO stmt_audit_option_map VALUES (33,  'ROLE')
  1305. *
  1306. INSERT INTO stmt_audit_option_map VALUES (34,  'SET')
  1307. *
  1308. INSERT INTO stmt_audit_option_map VALUES (35,  'PROCEDURE')
  1309. *
  1310. INSERT INTO stmt_audit_option_map VALUES (36,  'TRIGGER')
  1311. *
  1312. INSERT INTO stmt_audit_option_map VALUES (37,  'PROFILE')
  1313. *
  1314. INSERT INTO stmt_audit_option_map VALUES (40,  'CREATE TABLE')
  1315. *
  1316. INSERT INTO stmt_audit_option_map VALUES (41,  'CREATE ANY TABLE')
  1317. *
  1318. INSERT INTO stmt_audit_option_map VALUES (42,  'ALTER ANY TABLE')
  1319. *
  1320. INSERT INTO stmt_audit_option_map VALUES (43,  'BACKUP ANY TABLE')
  1321. *
  1322. INSERT INTO stmt_audit_option_map VALUES (44,  'DROP ANY TABLE')
  1323. *
  1324. INSERT INTO stmt_audit_option_map VALUES (45,  'LOCK ANY TABLE')
  1325. *
  1326. INSERT INTO stmt_audit_option_map VALUES (46,  'COMMENT ANY TABLE')
  1327. *
  1328. INSERT INTO stmt_audit_option_map VALUES (47,  'SELECT ANY TABLE')
  1329. *
  1330. INSERT INTO stmt_audit_option_map VALUES (48,  'INSERT ANY TABLE')
  1331. *
  1332. INSERT INTO stmt_audit_option_map VALUES (49,  'UPDATE ANY TABLE')
  1333. *
  1334. INSERT INTO stmt_audit_option_map VALUES (50,  'DELETE ANY TABLE')
  1335. *
  1336. INSERT INTO stmt_audit_option_map VALUES (53,  'GRANT ANY TABLE')
  1337. *
  1338. INSERT INTO stmt_audit_option_map VALUES (54,  'ALTER TABLE')
  1339. *
  1340. INSERT INTO stmt_audit_option_map VALUES (55,  'BACKUP TABLE')
  1341. *
  1342. INSERT INTO stmt_audit_option_map VALUES (56,  'DROP TABLE')
  1343. *
  1344. INSERT INTO stmt_audit_option_map VALUES (57,  'LOCK TABLE')
  1345. *
  1346. INSERT INTO stmt_audit_option_map VALUES (58,  'COMMENT TABLE')
  1347. *
  1348. INSERT INTO stmt_audit_option_map VALUES (60,  'CREATE CLUSTER')
  1349. *
  1350. INSERT INTO stmt_audit_option_map VALUES (61,  'CREATE ANY CLUSTER')
  1351. *
  1352. INSERT INTO stmt_audit_option_map VALUES (62,  'ALTER ANY CLUSTER')
  1353. *
  1354. INSERT INTO stmt_audit_option_map VALUES (63,  'DROP ANY CLUSTER')
  1355. *
  1356. INSERT INTO stmt_audit_option_map VALUES (65,  'SELECT TABLE')
  1357. *
  1358. INSERT INTO stmt_audit_option_map VALUES (66,  'INSERT TABLE')
  1359. *
  1360. INSERT INTO stmt_audit_option_map VALUES (67,  'UPDATE TABLE')
  1361. *
  1362. INSERT INTO stmt_audit_option_map VALUES (68,  'DELETE TABLE')
  1363. *
  1364. INSERT INTO stmt_audit_option_map VALUES (69,  'GRANT TABLE')
  1365. *
  1366. INSERT INTO stmt_audit_option_map VALUES (70,  'CREATE INDEX')
  1367. *
  1368. INSERT INTO stmt_audit_option_map VALUES (71,  'CREATE ANY INDEX')
  1369. *
  1370. INSERT INTO stmt_audit_option_map VALUES (72,  'ALTER ANY INDEX')
  1371. *
  1372. INSERT INTO stmt_audit_option_map VALUES (73,  'DROP ANY INDEX')
  1373. *
  1374. INSERT INTO stmt_audit_option_map VALUES (77,  'NOT EXISTS')
  1375. *
  1376. INSERT INTO stmt_audit_option_map VALUES (80,  'CREATE SYNONYM')
  1377. *
  1378. INSERT INTO stmt_audit_option_map VALUES (81,  'CREATE ANY SYNONYM')
  1379. *
  1380. INSERT INTO stmt_audit_option_map VALUES (82,  'DROP ANY SYNONYM')
  1381. *
  1382. INSERT INTO stmt_audit_option_map VALUES (85,  'CREATE PUBLIC SYNONYM')
  1383. *
  1384. INSERT INTO stmt_audit_option_map VALUES (86,  'DROP PUBLIC SYNONYM')
  1385. *
  1386. INSERT INTO stmt_audit_option_map VALUES (87,  'EXISTS')
  1387. *
  1388. INSERT INTO stmt_audit_option_map VALUES (90,  'CREATE VIEW')
  1389. *
  1390. INSERT INTO stmt_audit_option_map VALUES (91,  'CREATE ANY VIEW')
  1391. *
  1392. INSERT INTO stmt_audit_option_map VALUES (92,  'DROP ANY VIEW')
  1393. *
  1394. INSERT INTO stmt_audit_option_map VALUES (100, 'GRANT ANY VIEW')
  1395. *
  1396. INSERT INTO stmt_audit_option_map VALUES (103, 'ALTER SEQUENCE')
  1397. *
  1398. INSERT INTO stmt_audit_option_map VALUES (104, 'SELECT SEQUENCE')
  1399. *
  1400. INSERT INTO stmt_audit_option_map VALUES (105, 'CREATE SEQUENCE')
  1401. *
  1402. INSERT INTO stmt_audit_option_map VALUES (106, 'CREATE ANY SEQUENCE')
  1403. *
  1404. INSERT INTO stmt_audit_option_map VALUES (107, 'ALTER ANY SEQUENCE')
  1405. *
  1406. INSERT INTO stmt_audit_option_map VALUES (108, 'DROP ANY SEQUENCE')
  1407. *
  1408. INSERT INTO stmt_audit_option_map VALUES (109, 'SELECT ANY SEQUENCE')
  1409. *
  1410. INSERT INTO stmt_audit_option_map VALUES (111, 'GRANT SEQUENCE')
  1411. *
  1412. INSERT INTO stmt_audit_option_map VALUES (115, 'CREATE DATABASE LINK')
  1413. *
  1414. INSERT INTO stmt_audit_option_map VALUES (120, 'CREATE PUBLIC DATABASE LINK')
  1415. *
  1416. INSERT INTO stmt_audit_option_map VALUES (121, 'DROP PUBLIC DATABASE LINK')
  1417. *
  1418. INSERT INTO stmt_audit_option_map VALUES (125, 'CREATE ROLE')
  1419. *
  1420. INSERT INTO stmt_audit_option_map VALUES (126, 'DROP ANY ROLE')
  1421. *
  1422. INSERT INTO stmt_audit_option_map VALUES (127, 'GRANT ANY ROLE')
  1423. *
  1424. INSERT INTO stmt_audit_option_map VALUES (128, 'ALTER ANY ROLE')
  1425. *
  1426. INSERT INTO stmt_audit_option_map VALUES (130, 'AUDIT ANY')
  1427. *
  1428. INSERT INTO stmt_audit_option_map VALUES (131, 'SYSTEM GRANT')
  1429. *
  1430. INSERT INTO stmt_audit_option_map VALUES (140, 'CREATE PROCEDURE')
  1431. *
  1432. INSERT INTO stmt_audit_option_map VALUES (141, 'CREATE ANY PROCEDURE')
  1433. *
  1434. INSERT INTO stmt_audit_option_map VALUES (142, 'ALTER ANY PROCEDURE')
  1435. *
  1436. INSERT INTO stmt_audit_option_map VALUES (143, 'DROP ANY PROCEDURE')
  1437. *
  1438. INSERT INTO stmt_audit_option_map VALUES (144, 'EXECUTE ANY PROCEDURE')
  1439. *
  1440. INSERT INTO stmt_audit_option_map VALUES (145, 'GRANT ANY PROCEDURE')
  1441. *
  1442. INSERT INTO stmt_audit_option_map VALUES (146, 'EXECUTE PROCEDURE')
  1443. *
  1444. INSERT INTO stmt_audit_option_map VALUES (147, 'GRANT PROCEDURE')
  1445. *
  1446. INSERT INTO stmt_audit_option_map VALUES (151, 'CREATE TRIGGER')
  1447. *
  1448. INSERT INTO stmt_audit_option_map VALUES (152, 'CREATE ANY TRIGGER')
  1449. *
  1450. INSERT INTO stmt_audit_option_map VALUES (153, 'ALTER ANY TRIGGER')
  1451. *
  1452. INSERT INTO stmt_audit_option_map VALUES (154, 'DROP ANY TRIGGER')
  1453. *
  1454. INSERT INTO stmt_audit_option_map VALUES (155, 'TRUNCATE')
  1455. *
  1456. INSERT INTO stmt_audit_option_map VALUES (160, 'CREATE PROFILE')
  1457. *
  1458. INSERT INTO stmt_audit_option_map VALUES (161, 'ALTER PROFILE')
  1459. *
  1460. INSERT INTO stmt_audit_option_map VALUES (162, 'DROP PROFILE')
  1461. *
  1462. INSERT INTO stmt_audit_option_map VALUES (163, 'ALTER RESOURCE COST')
  1463. *
  1464. INSERT INTO stmt_audit_option_map VALUES (165, 'ANALYZE ANY')
  1465. *
  1466. INSERT INTO stmt_audit_option_map VALUES (170, 'CREATE SNAPSHOT')
  1467. *
  1468. INSERT INTO stmt_audit_option_map VALUES (171, 'ALTER SNAPSHOT')
  1469. *
  1470. INSERT INTO stmt_audit_option_map VALUES (172, 'DROP SNAPSHOT')
  1471. *
  1472. INSERT INTO stmt_audit_option_map VALUES (173, 'CREATE ANY SNAPSHOT')
  1473. *
  1474. INSERT INTO stmt_audit_option_map VALUES (174, 'ALTER ANY SNAPSHOT')
  1475. *
  1476. INSERT INTO stmt_audit_option_map VALUES (175, 'DROP ANY SNAPSHOT')
  1477. *
  1478. INSERT INTO stmt_audit_option_map VALUES (176, 'CREATE CLASS')
  1479. *
  1480. INSERT INTO stmt_audit_option_map VALUES (177, 'CREATE ANY CLASS')
  1481. *
  1482. INSERT INTO stmt_audit_option_map VALUES (178, 'ALTER ANY CLASS')
  1483. *
  1484. INSERT INTO stmt_audit_option_map VALUES (179, 'DROP ANY CLASS')
  1485. *
  1486. INSERT INTO stmt_audit_option_map VALUES (180, 'LOCK ANY CLASS')
  1487. *
  1488. INSERT INTO stmt_audit_option_map VALUES (181, 'COMMENT ANY CLASS')
  1489. *
  1490. INSERT INTO stmt_audit_option_map VALUES (182, 'GRANT ANY CLASS')
  1491. *
  1492. INSERT INTO stmt_audit_option_map VALUES (183, 'CREATE SET')
  1493. *
  1494. INSERT INTO stmt_audit_option_map VALUES (184, 'CREATE ANY SET')
  1495. *
  1496. INSERT INTO stmt_audit_option_map VALUES (185, 'ALTER ANY SET')
  1497. *
  1498. INSERT INTO stmt_audit_option_map VALUES (186, 'BACKUP ANY SET')
  1499. *
  1500. INSERT INTO stmt_audit_option_map VALUES (187, 'DROP ANY SET')
  1501. *
  1502. INSERT INTO stmt_audit_option_map VALUES (188, 'LOCK ANY SET')
  1503. *
  1504. INSERT INTO stmt_audit_option_map VALUES (189, 'SELECT ANY SET')
  1505. *
  1506. INSERT INTO stmt_audit_option_map VALUES (190, 'INSERT ANY SET')
  1507. *
  1508. INSERT INTO stmt_audit_option_map VALUES (191, 'UPDATE ANY SET')
  1509. *
  1510. INSERT INTO stmt_audit_option_map VALUES (192, 'DELETE ANY SET')
  1511. *
  1512. INSERT INTO stmt_audit_option_map VALUES (193, 'GRANT ANY SET')
  1513. *
  1514. INSERT INTO stmt_audit_option_map VALUES (197, 'READUP')
  1515. *
  1516. INSERT INTO stmt_audit_option_map VALUES (198, 'WRITEDOWN')
  1517. *
  1518. INSERT INTO stmt_audit_option_map VALUES (199, 'WRITEUP')
  1519. *
  1520.  
  1521. CREATE VIEW table_privileges
  1522.       (grantee, owner, table_name, grantor,
  1523.        select_priv, insert_priv, delete_priv, update_priv,
  1524.        references_priv, alter_priv, index_priv,
  1525.        created)
  1526.     AS SELECT
  1527.         EXPAND (grantee, 30),
  1528.         EXPAND (owner,   30),
  1529.         EXPAND (name1,   30),
  1530.         EXPAND (grantor, 30),
  1531.         DECODE (INDEX (privileges, 'SEL'), 0, 'N', 'Y'),
  1532.         DECODE (INDEX (privileges, 'INS'), 0, 'N', 'Y'),
  1533.         DECODE (INDEX (privileges, 'DEL'), 0, 'N', 'Y'),
  1534.         DECODE (INDEX (privileges, 'UPD'), 0, 'N', 'Y'),
  1535.         DECODE (INDEX (privileges, 'REF'), 0, 'N', 'Y'),
  1536.         DECODE (INDEX (privileges, 'ALT'), 0, 'N', 'Y'),
  1537.         DECODE (INDEX (privileges, 'IND'), 0, 'N', 'Y'),
  1538.         TIMESTAMP ("DATE", "TIME")
  1539.     FROM sysdd.privileges
  1540.        WHERE name2 IS NULL AND grantee <> grantor
  1541. *
  1542. GRANT ALL ON table_privileges TO PUBLIC WITH GRANT OPTION
  1543. *
  1544.  
  1545. CREATE TABLE table_privilege_map
  1546.       (privilege FLOAT (18) PRIMARY KEY,
  1547.        name      CHAR (40)  NOT NULL
  1548.       )
  1549. *
  1550. GRANT SELECT ON table_privilege_map TO PUBLIC WITH GRANT OPTION
  1551. *
  1552.  INSERT INTO table_privilege_map VALUES (0,  'ALTER')
  1553. *
  1554.  INSERT INTO table_privilege_map VALUES (1,  'AUDIT')
  1555. *
  1556.  INSERT INTO table_privilege_map VALUES (2,  'COMMENT')
  1557. *
  1558.  INSERT INTO table_privilege_map VALUES (3,  'DELETE')
  1559. *
  1560.  INSERT INTO table_privilege_map VALUES (4,  'GRANT')
  1561. *
  1562.  INSERT INTO table_privilege_map VALUES (5,  'INDEX')
  1563. *
  1564.  INSERT INTO table_privilege_map VALUES (6,  'INSERT')
  1565. *
  1566.  INSERT INTO table_privilege_map VALUES (7,  'LOCK')
  1567. *
  1568.  INSERT INTO table_privilege_map VALUES (8,  'RENAME')
  1569. *
  1570.  INSERT INTO table_privilege_map VALUES (9,  'SELECT')
  1571. *
  1572.  INSERT INTO table_privilege_map VALUES (10, 'UPDATE')
  1573. *
  1574.  INSERT INTO table_privilege_map VALUES (11, 'REFERENCES')
  1575. *
  1576.  INSERT INTO table_privilege_map VALUES (12, 'EXECUTE')
  1577. *
  1578.  
  1579. CREATE VIEW user_audit_trail
  1580.       (os_username, username, userhost, terminal, "TIMESTAMP",
  1581.        owner, obj_name, action, action_name, new_owner, new_name,
  1582.        obj_privilege, sys_privilege, admin_option, grantee, audit_option,
  1583.        ses_actions, logoff_time, logoff_lread, logoff_pread,
  1584.        logoff_lwrite, logoff_dlock, comment_text, sessionid, entryid,
  1585.        statementid, returncode, priv_used, object_label, session_label)
  1586.   AS SELECT EXPAND (' ', 254),
  1587.             EXPAND (' ',  30),
  1588.             EXPAND (' ', 254),
  1589.             EXPAND (' ', 254),
  1590.             TIMESTAMP (DATE, TIME),
  1591.             EXPAND (' ',  30),
  1592.             EXPAND (' ', 128),
  1593.             0,
  1594.             aa.name,
  1595.             EXPAND (' ',  30),
  1596.             EXPAND (' ', 128),
  1597.             EXPAND (' ',  16),
  1598.             EXPAND (' ',  40),
  1599.         'N',
  1600.         EXPAND (' ',  30),
  1601.             EXPAND (' ',  40),
  1602.             EXPAND (' ',  16),
  1603.             TIMESTAMP (DATE, TIME),
  1604.             0,
  1605.             0,
  1606.             0,
  1607.             EXPAND (' ',  40),
  1608.             EXPAND (' ', 254),
  1609.             0,
  1610.             0,
  1611.             0,
  1612.             0,
  1613.             EXPAND (' ',  40),
  1614.             NULL,
  1615.             NULL
  1616.         FROM dual, audit_actions aa
  1617.         WHERE 0 = 1 AND 0 = aa.action
  1618. *
  1619. GRANT ALL ON user_audit_trail TO PUBLIC WITH GRANT OPTION
  1620. *
  1621.  
  1622. CREATE VIEW user_audit_object
  1623.   AS SELECT os_username, username, userhost, terminal, "TIMESTAMP",
  1624.             owner, obj_name, action_name, new_owner, new_name,
  1625.             ses_actions, comment_text, sessionid, entryid, statementid,
  1626.             returncode, priv_used, object_label, session_label
  1627.        FROM user_audit_trail
  1628.        WHERE action BETWEEN   1 AND  16
  1629.           OR action BETWEEN  19 AND  29
  1630.           OR action BETWEEN  32 AND  41
  1631.           OR action = 43
  1632.           OR action BETWEEN  51 AND  99
  1633.           OR action = 103
  1634.           OR action BETWEEN 110 AND 113
  1635.           OR action BETWEEN 116 AND 121
  1636. *
  1637. GRANT ALL ON user_audit_object TO PUBLIC WITH GRANT OPTION
  1638. *
  1639.  
  1640. CREATE VIEW user_audit_session
  1641.   AS SELECT os_username, username, userhost, terminal, "TIMESTAMP",
  1642.             action_name, logoff_time, logoff_lread, logoff_pread,
  1643.             logoff_lwrite, logoff_dlock,
  1644.             sessionid, returncode, session_label
  1645.        FROM user_audit_trail
  1646.        WHERE action BETWEEN 100 AND 102
  1647. *
  1648. GRANT ALL ON user_audit_session TO PUBLIC WITH GRANT OPTION
  1649. *
  1650.  
  1651. CREATE VIEW user_audit_statement
  1652.   AS SELECT os_username, username, userhost, terminal, "TIMESTAMP",
  1653.             owner, obj_name, action_name, new_name, obj_privilege,
  1654.             sys_privilege, admin_option, grantee, audit_option,
  1655.             ses_actions, comment_text, sessionid, entryid,
  1656.             statementid, returncode, priv_used, session_label
  1657.        FROM user_audit_trail
  1658.        WHERE action IN (17, 18, 30, 31, 49, 104,
  1659.                         105, 106, 107, 108, 109, 114, 115)
  1660. *
  1661. GRANT ALL ON user_audit_statement TO PUBLIC WITH GRANT OPTION
  1662. *
  1663.  
  1664. CREATE VIEW user_catalog
  1665.     AS SELECT table_name, table_type
  1666.          FROM all_catalog
  1667.            WHERE owner = USERGROUP
  1668. *
  1669. GRANT ALL ON user_catalog TO PUBLIC WITH GRANT OPTION
  1670. *
  1671.  
  1672. CREATE VIEW user_clusters
  1673.       (cluster_name, tablespace_name,
  1674.        pct_free, pct_used, key_size, ini_trans, max_trans,
  1675.        initial_extent, next_extent, min_extents, max_extents, pct_increase,
  1676.        avg_blocks_per_key, cluster_type, function, hashkeys)
  1677.     AS SELECT
  1678.         EXPAND (' ',  30),
  1679.         'SYSTEM                        ',
  1680.         0,
  1681.         0,
  1682.         0,
  1683.         0,
  1684.         999999999999999999,
  1685.         0,
  1686.         0,
  1687.         0,
  1688.         999999999999999999,
  1689.         0,
  1690.         0,
  1691.         EXPAND (' ', 5),
  1692.         EXPAND (' ', 7),
  1693.     0
  1694.     FROM dual
  1695.        WHERE 1 = 0
  1696. *
  1697. GRANT ALL ON user_clusters TO PUBLIC WITH GRANT OPTION
  1698. *
  1699.  
  1700. CREATE VIEW user_clu_columns
  1701.       (cluster_name, clu_column_name, table_name, tab_column_name)
  1702.     AS SELECT
  1703.             EXPAND (' ',  30),
  1704.             EXPAND (' ',  30),
  1705.             EXPAND (' ',  30),
  1706.             EXPAND (' ',  30)
  1707.     FROM dual
  1708.        WHERE 1 = 0
  1709. *
  1710. GRANT ALL ON user_clu_columns TO PUBLIC WITH GRANT OPTION
  1711. *
  1712.  
  1713. CREATE VIEW user_col_comments
  1714.     AS SELECT table_name, column_name, comments
  1715.           FROM all_col_comments
  1716.            WHERE owner = USERGROUP
  1717. *
  1718. GRANT ALL ON user_col_comments TO PUBLIC WITH GRANT OPTION
  1719. *
  1720.  
  1721. CREATE VIEW user_col_privs
  1722.       (grantee, owner, table_name, column_name, grantor,
  1723.        privilege, grantable)
  1724.   AS SELECT
  1725.     EXPAND (grantee, 30),
  1726.     EXPAND (owner,   30),
  1727.         EXPAND (name1,   30),
  1728.         EXPAND (name2,   30),
  1729.         EXPAND (grantor, 30),
  1730.         RTRIM  (privileges, '+'),
  1731.         DECODE (INDEX (privileges, '+'), 0, 'NO', 'YES')
  1732.      FROM sysdd.new_privileges
  1733.      WHERE name2 IS NOT NULL AND grantor <> grantee
  1734.        AND (owner = USERGROUP OR grantor = USERGROUP OR grantee = USERGROUP)
  1735. *
  1736. GRANT ALL ON user_col_privs TO PUBLIC WITH GRANT OPTION
  1737. *
  1738.  
  1739. CREATE VIEW user_col_privs_made
  1740.    AS SELECT grantee, table_name, column_name, grantor, privilege, grantable
  1741.         FROM all_col_privs_made
  1742.         WHERE owner = USERGROUP
  1743. *
  1744. GRANT ALL ON user_col_privs_made TO PUBLIC WITH GRANT OPTION
  1745. *
  1746.  
  1747. CREATE VIEW user_col_privs_recd
  1748.    AS SELECT owner, table_name, column_name, grantor, privilege, grantable
  1749.         FROM all_col_privs_recd
  1750.         WHERE grantee = USERGROUP
  1751. *
  1752. GRANT ALL ON user_col_privs_recd TO PUBLIC WITH GRANT OPTION
  1753. *
  1754.  
  1755. CREATE VIEW user_constraints
  1756.    AS SELECT *
  1757.         FROM all_constraints
  1758.         WHERE owner = USERGROUP
  1759. *
  1760. GRANT ALL ON user_constraints TO PUBLIC WITH GRANT OPTION
  1761. *
  1762.  
  1763. CREATE VIEW user_cons_columns
  1764.    AS SELECT *
  1765.         FROM all_cons_columns
  1766.         WHERE owner = USERGROUP
  1767. *
  1768. GRANT ALL ON user_cons_columns TO PUBLIC WITH GRANT OPTION
  1769. *
  1770.  
  1771. CREATE VIEW user_db_links
  1772.       (db_link, username, password, host, created)
  1773.    AS SELECT EXPAND (' ',  30),
  1774.              EXPAND (' ',  30),
  1775.              EXPAND (' ',  30),
  1776.              EXPAND (' ', 254),
  1777.              TIMESTAMP (DATE, TIME)
  1778.         FROM dual
  1779.         WHERE 0 = 1
  1780. *
  1781. GRANT ALL ON user_db_links TO PUBLIC WITH GRANT OPTION
  1782. *
  1783.  
  1784. CREATE VIEW user_dependencies
  1785.   AS SELECT name, type, referenced_owner, referenced_name, referenced_type,
  1786.             referenced_link_name
  1787.        FROM all_dependencies
  1788.        WHERE owner = USERGROUP
  1789. *
  1790. GRANT ALL ON user_dependencies TO PUBLIC WITH GRANT OPTION
  1791. *
  1792.  
  1793. CREATE VIEW user_errors
  1794.   AS SELECT name, type, sequence, line, position, text
  1795.        FROM all_errors
  1796.        WHERE owner = USERGROUP
  1797. *
  1798. GRANT ALL ON user_errors TO PUBLIC WITH GRANT OPTION
  1799. *
  1800.  
  1801. CREATE VIEW user_extents
  1802.       (segment_name, segment_type, tablespace_name, extent_id, bytes, blocks)
  1803.    AS SELECT
  1804.         EXPAND (' ', 81),
  1805.         EXPAND (' ', 17),
  1806.     'SYSTEM                        ',
  1807.         0,
  1808.         0,
  1809.         0
  1810.         FROM dual
  1811.         WHERE 0 = 1
  1812. *
  1813. GRANT ALL ON user_extents TO PUBLIC WITH GRANT OPTION
  1814. *
  1815.  
  1816. CREATE VIEW user_free_space
  1817.       (tablespace_name, file_id, block_id, bytes, blocks)
  1818.    AS SELECT
  1819.     'SYSTEM                        ',
  1820.         0,
  1821.         0,
  1822.         0,
  1823.         0
  1824.         FROM dual
  1825.         WHERE 0 = 1
  1826. *
  1827. GRANT ALL ON user_free_space TO PUBLIC WITH GRANT OPTION
  1828. *
  1829.  
  1830. CREATE VIEW user_indexes
  1831.    AS SELECT index_name, table_owner, table_name, table_type,
  1832.              uniqueness, tablespace_name, ini_trans, max_trans,
  1833.              initial_extent, next_extent, min_extents, max_extents,
  1834.              pct_increase, pct_free, blevel, leaf_blocks, distinct_keys,
  1835.          avg_leaf_blocks_per_key, avg_data_blocks_per_key,
  1836.          clustering_factor, status
  1837.         FROM all_indexes
  1838.         WHERE table_owner = USERGROUP
  1839. *
  1840. GRANT ALL ON user_indexes TO PUBLIC WITH GRANT OPTION
  1841. *
  1842.  
  1843. CREATE VIEW user_ind_columns
  1844.    AS SELECT index_name, table_name,
  1845.              column_name, column_position, column_length
  1846.         FROM all_ind_columns
  1847.         WHERE table_owner = USERGROUP
  1848. *
  1849. GRANT ALL ON user_ind_columns TO PUBLIC WITH GRANT OPTION
  1850. *
  1851.  
  1852. CREATE VIEW user_objects
  1853.       (object_name, object_id, object_type, created, last_ddl_time,
  1854.        "TIMESTAMP", status)
  1855.     AS SELECT
  1856.         object_name,
  1857.         object_id,
  1858.         EXPAND (object_type, 13),
  1859.         created,
  1860.         last_ddl_time,
  1861.     "TIMESTAMP",
  1862.     status
  1863.       FROM all_objects
  1864.       WHERE owner = USERGROUP
  1865. *
  1866. GRANT ALL ON user_objects TO PUBLIC WITH GRANT OPTION
  1867. *
  1868.  
  1869. CREATE VIEW user_object_size
  1870.       (name, type, source_size, parsed_size, code_size, error_size)
  1871.   AS SELECT
  1872.        EXPAND (' ', 30),
  1873.        EXPAND (' ', 12),
  1874.        0,
  1875.        0,
  1876.        0,
  1877.        0
  1878.      FROM dual
  1879.      WHERE 0 = 1
  1880. *
  1881. GRANT ALL ON user_object_size TO PUBLIC WITH GRANT OPTION
  1882. *
  1883.  
  1884. CREATE VIEW user_obj_audit_opts
  1885.       (object_name, object_type,
  1886.        alt, aud, com, del, gra, ind, ins, loc, ren, sel, upd, ref, exe)
  1887.     AS SELECT
  1888.         EXPAND (tablename, 30),
  1889.         'TABLE',
  1890.         '-/-', '-/-', '-/-', '-/-', '-/-', '-/-', '-/-', '-/-',
  1891.         '-/-', '-/-', '-/-', '-/-', '-/-'
  1892.      FROM sysdd.tables
  1893.        WHERE type = 'TABLE' AND owner = USERGROUP
  1894.     UNION ALL SELECT
  1895.         EXPAND (tablename, 30),
  1896.         'VIEW  ',
  1897.         '-/-', '-/-', '-/-', '-/-', '-/-', '-/-', '-/-', '-/-',
  1898.         '-/-', '-/-', '-/-', '-/-', '-/-'
  1899.      FROM sysdd.views
  1900.        WHERE owner = USERGROUP
  1901. *
  1902. GRANT ALL ON user_obj_audit_opts TO PUBLIC WITH GRANT OPTION
  1903. *
  1904.  
  1905. CREATE VIEW user_resource_limits
  1906.       (resource_name, limit)
  1907.   AS SELECT
  1908.        EXPAND (' ', 32),
  1909.        EXPAND (' ', 40)
  1910.      FROM dual
  1911. *
  1912. GRANT ALL ON user_resource_limits TO PUBLIC WITH GRANT OPTION
  1913. *
  1914.  
  1915. CREATE VIEW user_role_privs
  1916.       (username, granted_role, admin_option, default_role, os_granted)
  1917.   AS SELECT
  1918.        EXPAND (USER, 30),
  1919.        EXPAND (USER, 30),
  1920.        'NO ',
  1921.        'NO ',
  1922.        'NO '
  1923.      FROM dual
  1924. *
  1925. GRANT ALL ON user_role_privs TO PUBLIC WITH GRANT OPTION
  1926. *
  1927.  
  1928. CREATE VIEW user_segments
  1929.       (segment_name, segment_type, tablespace_name, bytes, blocks,
  1930.        extents, initial_extent, next_extent, min_extents, max_extents,
  1931.        pct_increase, freelists, freelist_groups)
  1932.     AS SELECT
  1933.         EXPAND (tablename, 81),
  1934.         'TABLE            ',
  1935.         'SYSTEM                        ',
  1936.         FIXED (NULL),
  1937.     FIXED (NULL),
  1938.     FIXED (NULL),
  1939.     FIXED (NULL),
  1940.     FIXED (NULL),
  1941.     FIXED (NULL),
  1942.     FIXED (NULL),
  1943.     FIXED (NULL),
  1944.     FIXED (NULL),
  1945.     FIXED (NULL)
  1946.     FROM sysdd.tables
  1947.     WHERE owner = USERGROUP AND type = 'TABLE'
  1948. *
  1949. GRANT ALL ON user_segments TO PUBLIC WITH GRANT OPTION
  1950. *
  1951.  
  1952. CREATE VIEW user_sequences
  1953.     AS SELECT sequence_name, min_value, max_value, increment_by,
  1954.                   cycle_flag, order_flag, cache_size, last_number
  1955.          FROM all_sequences
  1956.          WHERE sequence_owner = USERGROUP
  1957. *
  1958. GRANT ALL ON user_sequences TO PUBLIC WITH GRANT OPTION
  1959. *
  1960.  
  1961. CREATE VIEW user_snapshots
  1962.     AS SELECT * FROM all_snapshots
  1963.          WHERE owner = USERGROUP
  1964. *
  1965. GRANT ALL ON user_snapshots TO PUBLIC WITH GRANT OPTION
  1966. *
  1967.  
  1968. CREATE VIEW user_snapshot_logs
  1969.       (log_owner, master, log_table, log_trigger, current_snapshots)
  1970.   AS SELECT
  1971.        EXPAND (owner,                 30),
  1972.        EXPAND (tablename,             30),
  1973.        EXPAND ('MLOG$_' || tablename, 30),
  1974.        EXPAND (NULL, 30),
  1975.        TIMESTAMP (NULL, NULL)
  1976.      FROM sysdd.tables
  1977.      WHERE snapshot_log = 'YES'
  1978. *
  1979. GRANT ALL ON user_snapshot_logs TO PUBLIC WITH GRANT OPTION
  1980. *
  1981.  
  1982. CREATE VIEW user_source
  1983.   AS SELECT name, type, line, text
  1984.      FROM all_source
  1985.      WHERE owner = USERGROUP
  1986. *
  1987. GRANT ALL ON user_source TO PUBLIC WITH GRANT OPTION
  1988. *
  1989.  
  1990. CREATE VIEW user_synonyms
  1991.       (synonym_name, table_owner, table_name, db_link)
  1992.     AS SELECT
  1993.         EXPAND (synonymname, 30),
  1994.         EXPAND (owner,       30),
  1995.         EXPAND (tablename,   30),
  1996.         EXPAND (NULL,        30)
  1997.     FROM sysdd.synonyms
  1998. *
  1999. GRANT ALL ON user_synonyms TO PUBLIC WITH GRANT OPTION
  2000. *
  2001.  
  2002. CREATE VIEW user_sys_privs
  2003.       (username, privilege, admin_option)
  2004.   AS SELECT
  2005.        EXPAND (USER, 30),
  2006.        EXPAND (' ',  40),
  2007.        'NO '
  2008.      FROM dual
  2009.        WHERE 0 = 1
  2010. *
  2011. GRANT ALL ON user_sys_privs TO PUBLIC WITH GRANT OPTION
  2012. *
  2013.  
  2014. CREATE VIEW user_tables
  2015.      AS SELECT table_name, tablespace_name, cluster_name,
  2016.                  pct_free, pct_used, ini_trans, max_trans,
  2017.                initial_extent, next_extent, min_extents, max_extents,
  2018.                pct_increase, backed_up, num_rows, blocks, empty_blocks,
  2019.            avg_space, chain_cnt, avg_row_len
  2020.           FROM all_tables
  2021.           WHERE owner = USERGROUP
  2022. *
  2023. GRANT ALL ON user_tables TO PUBLIC WITH GRANT OPTION
  2024. *
  2025.  
  2026. CREATE VIEW user_tablespaces
  2027.       (tablespace_name, initial_extent, next_extent, min_extents, max_extents,
  2028.        pct_increase, status)
  2029.    AS SELECT
  2030.     'SYSTEM                        ',
  2031.         0,
  2032.         0,
  2033.         0,
  2034.         999999999999999999,
  2035.         0,
  2036.         EXPAND (' ', 9)
  2037.         FROM dual
  2038.         WHERE 0 = 1
  2039. *
  2040. GRANT ALL ON user_tablespaces TO PUBLIC WITH GRANT OPTION
  2041. *
  2042.  
  2043. CREATE VIEW user_tab_columns
  2044.     AS SELECT table_name, column_name, data_type, data_length,
  2045.                 data_precision, data_scale, nullable, column_id,
  2046.                 default_length, data_default,
  2047.         num_distinct, low_value, high_value, density
  2048.          FROM all_tab_columns
  2049.          WHERE owner = USERGROUP
  2050. *
  2051. GRANT ALL ON user_tab_columns TO PUBLIC WITH GRANT OPTION
  2052. *
  2053.  
  2054. CREATE VIEW user_tab_comments
  2055.     AS SELECT table_name, table_type, comments
  2056.           FROM all_tab_comments
  2057.          WHERE owner = USERGROUP
  2058. *
  2059. GRANT ALL ON user_tab_comments TO PUBLIC WITH GRANT OPTION
  2060. *
  2061.  
  2062. CREATE VIEW user_tab_privs
  2063.       (grantee, owner, table_name, grantor, privilege, grantable)
  2064.   AS SELECT
  2065.     EXPAND (grantee, 30),
  2066.     EXPAND (owner,   30),
  2067.         EXPAND (name1,   30),
  2068.         EXPAND (grantor, 30),
  2069.         RTRIM  (privileges, '+'),
  2070.         DECODE (INDEX (privileges, '+'), 0, 'NO', 'YES')
  2071.      FROM sysdd.new_privileges
  2072.      WHERE name2 IS NULL AND grantor <> grantee
  2073.        AND owner = USERGROUP OR grantor = USERGROUP OR grantee = USERGROUP
  2074. *
  2075. GRANT ALL ON user_tab_privs TO PUBLIC WITH GRANT OPTION
  2076. *
  2077.  
  2078. CREATE VIEW user_tab_privs_made
  2079.     AS SELECT grantee, table_name, grantor, privilege, grantable
  2080.          FROM all_tab_privs_made
  2081.          WHERE owner = USERGROUP
  2082. *
  2083. GRANT ALL ON user_tab_privs_made TO PUBLIC WITH GRANT OPTION
  2084. *
  2085.  
  2086. CREATE VIEW user_tab_privs_recd
  2087.     AS SELECT owner, table_name, grantor, privilege, grantable
  2088.          FROM all_tab_privs_recd
  2089.          WHERE grantee = USERGROUP
  2090. *
  2091. GRANT ALL ON user_tab_privs_recd TO PUBLIC WITH GRANT OPTION
  2092. *
  2093.  
  2094. CREATE VIEW user_triggers
  2095.   AS SELECT trigger_name, trigger_type, triggering_event,
  2096.             table_owner, table_name, referencing_names, when_clause,
  2097.             status, description, trigger_body
  2098.        FROM all_triggers
  2099.        WHERE owner = USERGROUP
  2100. *
  2101. GRANT ALL ON user_triggers TO PUBLIC WITH GRANT OPTION
  2102. *
  2103.  
  2104. CREATE VIEW user_trigger_cols
  2105.   AS SELECT * FROM all_trigger_cols
  2106.        WHERE trigger_owner = USERGROUP OR table_owner = USERGROUP
  2107. *
  2108. GRANT ALL ON user_trigger_cols TO PUBLIC WITH GRANT OPTION
  2109. *
  2110.  
  2111. CREATE VIEW user_ts_quotas
  2112.       (tablespace_name, bytes, max_bytes, blocks, max_blocks)
  2113.    AS SELECT
  2114.     'SYSTEM                        ',
  2115.         0,
  2116.         999999999999999999,
  2117.         0,
  2118.         999999999999999999
  2119.         FROM dual
  2120.         WHERE 0 = 1
  2121. *
  2122. GRANT ALL ON user_ts_quotas TO PUBLIC WITH GRANT OPTION
  2123. *
  2124.  
  2125. CREATE VIEW user_users
  2126.       (username, user_id, default_tablespace, temporary_tablespace, created)
  2127.     AS SELECT
  2128.         EXPAND (username, 30),
  2129.         user_id,
  2130.         'SYSTEM                        ',
  2131.         'SYSTEM                        ',
  2132.         TIMESTAMP ("DATE", "TIME")
  2133.     FROM sysdd.users
  2134.        WHERE username = USERGROUP
  2135. *
  2136. GRANT ALL ON user_users TO PUBLIC WITH GRANT OPTION
  2137. *
  2138.  
  2139. CREATE VIEW user_views
  2140.     AS SELECT view_name, text_length, text
  2141.          FROM all_views
  2142.          WHERE owner = USERGROUP
  2143. *
  2144. GRANT ALL ON user_views TO PUBLIC WITH GRANT OPTION
  2145. *
  2146.  
  2147.  
  2148. *
  2149. * =================================
  2150. * Part 2) DBA Data Dictionary Views
  2151. * =================================
  2152. *
  2153. * The following data dictionary views are restricted. They can be accessed
  2154. * only by users with the dba privilege
  2155. *
  2156.  
  2157. CREATE VIEW dba_2pc_neighbors
  2158.       (local_tran_id, in_out, "DATABASE", dbuser_owner,
  2159.        interface, dbid, "SESS#", branch)
  2160.   AS SELECT
  2161.        EXPAND (' ',  22),
  2162.        'OUT',
  2163.        EXPAND (' ', 128),
  2164.        EXPAND (' ',  30),
  2165.        'N',
  2166.        EXPAND (' ',  16),
  2167.        0,
  2168.        EXPAND (' ', 128)
  2169.      FROM dual
  2170.        WHERE 0 = 1
  2171. *
  2172. GRANT ALL ON dba_2pc_neighbors TO PUBLIC
  2173. *
  2174.  
  2175. CREATE VIEW dba_2pc_pending
  2176.     (local_tran_id, global_tran_id, state, mixed, advice, tran_comment,
  2177.      fail_time, force_time, retry_time, os_user, os_terminal,
  2178.      host, db_user, "COMMIT#")
  2179.   AS SELECT
  2180.        EXPAND (' ',  22),
  2181.        EXPAND (' ', 169),
  2182.        EXPAND (' ',  16),
  2183.        EXPAND (' ',   3),
  2184.        'C',
  2185.        EXPAND (' ',  254),
  2186.        TIMESTAMP (DATE, TIME),
  2187.        TIMESTAMP (DATE, TIME),
  2188.        TIMESTAMP (DATE, TIME),
  2189.        EXPAND (' ',  254),
  2190.        EXPAND (' ',  254),
  2191.        EXPAND (' ',  254),
  2192.        EXPAND (USER,  30),
  2193.        EXPAND (' ',   16)
  2194.      FROM dual
  2195.      WHERE 0 = 1
  2196. *
  2197. GRANT ALL ON dba_2pc_pending TO PUBLIC
  2198. *
  2199.  
  2200. CREATE VIEW dba_audit_trail
  2201.       (os_username, username, userhost, terminal, "TIMESTAMP",
  2202.        owner, obj_name, action, action_name, new_owner, new_name,
  2203.        obj_privilege, sys_privilege, admin_option, grantee, audit_option,
  2204.        ses_actions, logoff_time, logoff_lread, logoff_pread,
  2205.        logoff_lwrite, logoff_dlock, comment_text, sessionid, entryid,
  2206.        statementid, returncode, priv_used, object_label, session_label)
  2207.   AS SELECT EXPAND (' ', 254),
  2208.             EXPAND (' ',  30),
  2209.             EXPAND (' ', 254),
  2210.             EXPAND (' ', 254),
  2211.             TIMESTAMP (DATE, TIME),
  2212.             EXPAND (' ',  30),
  2213.             EXPAND (' ', 128),
  2214.             0,
  2215.             aa.name,
  2216.             EXPAND (' ',  30),
  2217.             EXPAND (' ', 128),
  2218.             EXPAND (' ',  16),
  2219.             EXPAND (' ',  40),
  2220.         'N',
  2221.         EXPAND (' ',  30),
  2222.             EXPAND (' ',  40),
  2223.             EXPAND (' ',  16),
  2224.             TIMESTAMP (DATE, TIME),
  2225.             0,
  2226.             0,
  2227.             0,
  2228.             EXPAND (' ',  40),
  2229.             EXPAND (' ', 254),
  2230.             0,
  2231.             0,
  2232.             0,
  2233.             0,
  2234.             EXPAND (' ',  40),
  2235.             NULL,
  2236.             NULL
  2237.         FROM dual, audit_actions aa
  2238.         WHERE 0 = 1 AND 0 = aa.action
  2239. *
  2240. GRANT ALL ON dba_audit_trail TO PUBLIC
  2241. *
  2242.  
  2243. CREATE VIEW dba_audit_exists
  2244.   AS SELECT os_username, username, userhost, terminal, "TIMESTAMP",
  2245.             owner, obj_name, action_name, new_owner, new_name,
  2246.             obj_privilege, sys_privilege, grantee,
  2247.             sessionid, entryid, statementid, returncode
  2248.        FROM dba_audit_trail
  2249.        WHERE returncode IN (942, 943, 959, 1418, 1432, 1434, 1435,
  2250.                             1534, 1917, 1918, 1919, 2019, 2024, 2289,
  2251.                             4042, 4043, 4080, 1, 951, 955, 957, 1430,
  2252.                             1433, 1452, 1471, 1535, 1543, 1758, 1920,
  2253.                             1921, 1922, 2239, 2264, 2266, 2273, 2292,
  2254.                             2297, 2378, 2379, 2382, 4081, 12006, 12325)
  2255. *
  2256. GRANT ALL ON dba_audit_exists TO PUBLIC
  2257. *
  2258.  
  2259. CREATE VIEW dba_audit_object
  2260.   AS SELECT os_username, username, userhost, terminal, "TIMESTAMP",
  2261.             owner, obj_name, action_name, new_owner, new_name,
  2262.             ses_actions, comment_text, sessionid, entryid, statementid,
  2263.             returncode, priv_used, object_label, session_label
  2264.        FROM dba_audit_trail
  2265.        WHERE action BETWEEN   1 AND  16
  2266.           OR action BETWEEN  19 AND  29
  2267.           OR action BETWEEN  32 AND  41
  2268.           OR action = 43
  2269.           OR action BETWEEN  51 AND  99
  2270.           OR action = 103
  2271.           OR action BETWEEN 110 AND 113
  2272.           OR action BETWEEN 116 AND 121
  2273. *
  2274. GRANT ALL ON dba_audit_object TO PUBLIC
  2275. *
  2276.  
  2277. CREATE VIEW dba_audit_session
  2278.   AS SELECT os_username, username, userhost, terminal, "TIMESTAMP",
  2279.             action_name, logoff_time, logoff_lread, logoff_pread,
  2280.             logoff_lwrite, logoff_dlock, sessionid, returncode, session_label
  2281.        FROM dba_audit_trail
  2282.        WHERE action BETWEEN 100 AND 102
  2283. *
  2284. GRANT ALL ON dba_audit_session TO PUBLIC
  2285. *
  2286.  
  2287. CREATE VIEW dba_audit_statement
  2288.   AS SELECT os_username, username, userhost, terminal, "TIMESTAMP",
  2289.             owner, obj_name, action_name, new_name, obj_privilege,
  2290.             sys_privilege, admin_option, grantee, audit_option,
  2291.             ses_actions, comment_text, sessionid, entryid, statementid,
  2292.             returncode, priv_used, session_label
  2293.        FROM dba_audit_trail
  2294.        WHERE action IN (17, 18, 30, 31, 49, 104, 105,
  2295.                         106, 107, 108, 109, 114, 115)
  2296. *
  2297. GRANT ALL ON dba_audit_statement TO PUBLIC
  2298. *
  2299.  
  2300. CREATE VIEW dba_blockers
  2301.       (session_id)
  2302.   AS SELECT 0 FROM dual WHERE 0 = 1
  2303. *
  2304. GRANT ALL ON dba_blockers TO PUBLIC
  2305. *
  2306.  
  2307. CREATE VIEW dba_catalog
  2308.       (owner, table_name, table_type)
  2309.     AS SELECT
  2310.         EXPAND (owner,     30),
  2311.         EXPAND (tablename, 30),
  2312.         EXPAND (type,      11)
  2313.     FROM sysdd.db_tables
  2314.   UNION ALL SELECT
  2315.         EXPAND (owner,         30),
  2316.         EXPAND (sequence_name, 30),
  2317.         'SEQUENCE   '
  2318.     FROM sysdd.db_sequences
  2319. *
  2320. GRANT ALL ON dba_catalog TO PUBLIC
  2321. *
  2322.  
  2323. CREATE VIEW dba_clusters
  2324.       (owner, cluster_name, tablespace_name,
  2325.        pct_free, pct_used, key_size, ini_trans, max_trans,
  2326.        initial_extent, next_extent, min_extents, max_extents, pct_increase,
  2327.        avg_blocks_per_key, cluster_type, function, hashkeys)
  2328.     AS SELECT
  2329.         EXPAND (' ', 30),
  2330.         EXPAND (' ', 30),
  2331.     'SYSTEM                        ',
  2332.         0, 0, 0, 0, 999999999999999999,
  2333.         0, 0, 0,    999999999999999999, 0,
  2334.         0,
  2335.         EXPAND (' ', 5),
  2336.         EXPAND (' ', 7),
  2337.     0
  2338.     FROM dual
  2339.        WHERE 1 = 0
  2340. *
  2341. GRANT ALL ON dba_clusters TO PUBLIC
  2342. *
  2343.  
  2344. CREATE VIEW dba_clu_columns
  2345.       (owner, cluster_name, clu_column_name, table_name, tab_column_name)
  2346.     AS SELECT
  2347.         EXPAND (' ', 30),
  2348.         EXPAND (' ', 30),
  2349.         EXPAND (' ', 30),
  2350.         EXPAND (' ', 30),
  2351.         EXPAND (' ', 30)
  2352.     FROM dual
  2353.        WHERE 1 = 0
  2354. *
  2355. GRANT ALL ON dba_clu_columns TO PUBLIC
  2356. *
  2357.  
  2358. CREATE VIEW dba_col_comments
  2359.        (owner, table_name, column_name, comments)
  2360.     AS SELECT
  2361.         EXPAND (owner,      30),
  2362.         EXPAND (tablename,  30),
  2363.         EXPAND (columnname, 30),
  2364.         comment_c
  2365.     FROM sysdd.db_columns
  2366. *
  2367. GRANT ALL ON dba_col_comments TO PUBLIC
  2368. *
  2369.  
  2370. CREATE VIEW dba_col_privs
  2371.       (grantee, owner, table_name, column_name, grantor, privilege, grantable)
  2372.     AS SELECT
  2373.         EXPAND (grantee,    30),
  2374.         EXPAND (owner,      30),
  2375.         EXPAND (name1,      30),
  2376.         EXPAND (name2,      30),
  2377.         EXPAND (grantor,    30),
  2378.         RTRIM  (privileges, '+'),
  2379.         DECODE (INDEX (privileges, '+'), 0, 'NO', 'YES')
  2380.     FROM sysdd.db_new_privileges
  2381.        WHERE name2 IS NOT NULL
  2382. *
  2383. GRANT ALL ON dba_col_privs TO PUBLIC
  2384. *
  2385.  
  2386. CREATE VIEW dba_constraints
  2387.       (owner, constraint_name, constraint_type, table_name,
  2388.        search_condition, r_owner, r_constraint_name, delete_rule, status)
  2389.     AS SELECT
  2390.         EXPAND (owner,          30),
  2391.         EXPAND (constraintname, 30),
  2392.         'C ',
  2393.         EXPAND (tablename,      30),
  2394.         definition_c,
  2395.         EXPAND (NULL, 30),
  2396.         EXPAND (NULL, 30),
  2397.         EXPAND (NULL, 10),
  2398.         'ENABLED '
  2399.     FROM sysdd.db_constraints
  2400. UNION ALL SELECT
  2401.        EXPAND (owner,         30),
  2402.        'C' || tablename || CHR (columnno),
  2403.        'C ',
  2404.        EXPAND (tablename,     30),
  2405.        columnname || ' IS NOT NULL',
  2406.        EXPAND (NULL, 30),
  2407.        EXPAND (NULL, 30),
  2408.        EXPAND (NULL, 10),
  2409.        'ENABLED '
  2410.    FROM sysdd.db_columns
  2411.    WHERE mod = 'MAN'
  2412. UNION ALL SELECT
  2413.        EXPAND (owner,     30),
  2414.        'P' || tablename || CHR (keycolumnno),
  2415.        'P ',
  2416.        EXPAND (tablename,  30),
  2417.        EXPAND (columnname, 30),
  2418.        EXPAND (NULL,       30),
  2419.        EXPAND (NULL,       30),
  2420.        EXPAND (NULL,       10),
  2421.        'ENABLED '
  2422.   FROM sysdd.db_columns
  2423.   WHERE keycolumnno IS NOT NULL
  2424. UNION ALL SELECT
  2425.        EXPAND (owner,      30),
  2426.        EXPAND (refname,    30),
  2427.        'R ',
  2428.        EXPAND (tablename,  30),
  2429.        EXPAND (columnname, 30),
  2430.        EXPAND (refowner,   30),
  2431.        EXPAND (NULL,       30),
  2432.        DECODE (rule, 'DELETE CASCADE',  'CASCADE',
  2433.                      'DELETE RESTRICT', 'NO ACTION',
  2434.                                         rule),
  2435.        'ENABLED '
  2436.   FROM sysdd.db_foreign_keys
  2437. *
  2438. GRANT ALL ON dba_constraints TO PUBLIC
  2439. *
  2440.  
  2441. CREATE VIEW dba_cons_columns
  2442.       (owner, constraint_name, table_name, column_name, position)
  2443.     AS SELECT
  2444.         EXPAND (owner,          30),
  2445.         EXPAND (constraintname, 30),
  2446.         EXPAND (tablename,      30),
  2447.         EXPAND (columnname,     30),
  2448.         DECODE (type, 'CHECK', NULL, columnno)
  2449.        FROM sysdd.db_constraintcols
  2450. *
  2451. GRANT ALL ON dba_cons_columns TO PUBLIC
  2452. *
  2453.  
  2454. CREATE VIEW dba_data_files
  2455.       (file_name, file_id, tablespace_name, bytes, blocks, status)
  2456.     AS SELECT
  2457.        EXPAND (' ', 72),
  2458.        1,
  2459.     'SYSTEM                        ',
  2460.        0, 0,
  2461.        'AVAILABLE'
  2462.     FROM dual
  2463.        WHERE 0 = 1
  2464. *
  2465. GRANT ALL ON dba_data_files TO PUBLIC
  2466. *
  2467.  
  2468. CREATE VIEW dba_db_links
  2469.       (owner, db_link, username, password, host, created)
  2470.     AS SELECT
  2471.         EXPAND (' ',  30),
  2472.         EXPAND (' ',  30),
  2473.         EXPAND (' ',  30),
  2474.         EXPAND (' ',  30),
  2475.         EXPAND (' ', 254),
  2476.         TIMESTAMP (DATE, TIME)
  2477.     FROM dual
  2478.        WHERE 0 = 1
  2479. *
  2480. GRANT ALL ON dba_db_links TO PUBLIC
  2481. *
  2482.  
  2483. CREATE VIEW dba_ddl_locks
  2484.       (session_id, owner, name, type, mode_held, mode_requested)
  2485.   AS SELECT
  2486.        0,
  2487.        EXPAND (USER, 30),
  2488.        ' ',
  2489.        ' ',
  2490.        'NONE      ',
  2491.        'EXCLUSIVE '
  2492.      FROM dual
  2493.      WHERE 0 = 1
  2494. *
  2495. GRANT ALL ON dba_ddl_locks TO PUBLIC
  2496. *
  2497.  
  2498. CREATE VIEW dba_dependencies
  2499.       (owner, name, type,
  2500.        referenced_owner, referenced_name, referenced_type,
  2501.        referenced_link_name)
  2502.   AS SELECT
  2503.        EXPAND (owner,        30),
  2504.        EXPAND (tablename,    30),
  2505.        'VIEW        ',
  2506.        EXPAND (refname,      30),
  2507.        EXPAND (reftablename, 30),
  2508.        'TABLE       ',
  2509.        EXPAND (NULL, 30)
  2510.      FROM sysdd.db_view_uses_table
  2511. *
  2512. GRANT ALL ON dba_dependencies TO PUBLIC
  2513. *
  2514.  
  2515. CREATE VIEW dba_dml_locks
  2516.       (session_id, owner, name, mode_held, mode_requested)
  2517.   AS SELECT
  2518.        0,
  2519.        EXPAND (USER, 30),
  2520.        ' ',
  2521.        'NONE      ',
  2522.        'EXCLUSIVE '
  2523.      FROM dual
  2524.      WHERE 0 = 1
  2525. *
  2526. GRANT ALL ON dba_dml_locks TO PUBLIC
  2527. *
  2528.  
  2529. CREATE VIEW dba_errors
  2530.        (owner, name, type, sequence, line, position, text)
  2531.   AS SELECT
  2532.        EXPAND (USER, 30),
  2533.        EXPAND (' ',  30),
  2534.        EXPAND (' ',  12),
  2535.        999, 1, 1,
  2536.        EXPAND (' ',  200)
  2537.      FROM dual
  2538.      WHERE 0 = 1
  2539. *
  2540. GRANT ALL ON dba_errors TO PUBLIC
  2541. *
  2542.  
  2543. CREATE VIEW dba_exp_files
  2544.       (exp_version, exp_type, file_name, user_name, "TIMESTAMP")
  2545.     AS SELECT
  2546.        0,
  2547.        'CUMULATIVE',
  2548.        EXPAND (' ', 72),
  2549.        EXPAND (' ', 30),
  2550.        TIMESTAMP (DATE, TIME)
  2551.     FROM dual
  2552.        WHERE 0 = 1
  2553. *
  2554. GRANT ALL ON dba_exp_files TO PUBLIC
  2555. *
  2556.  
  2557. CREATE VIEW dba_exp_objects
  2558.       (owner, object_name, object_type,
  2559.        cumulative, incremental, export_version)
  2560.   AS SELECT
  2561.        EXPAND (USER, 30),
  2562.        EXPAND (' ',  30),
  2563.        EXPAND (' ',  12),
  2564.        TIMESTAMP (DATE, TIME),
  2565.        TIMESTAMP (DATE, TIME),
  2566.        0
  2567.      FROM dual
  2568.      WHERE 0 = 1
  2569. *
  2570. GRANT ALL ON dba_exp_objects TO PUBLIC
  2571. *
  2572.  
  2573. CREATE VIEW dba_exp_version
  2574.   AS SELECT 0 exp_version FROM dual
  2575. *
  2576. GRANT ALL ON dba_exp_version TO PUBLIC
  2577. *
  2578.  
  2579. CREATE VIEW dba_extents
  2580.       (owner, segment_name, segment_type, tablespace_name,
  2581.        extent_id, file_id, block_id, bytes, blocks)
  2582.     AS SELECT
  2583.        EXPAND (' ', 30),
  2584.        EXPAND (' ', 72),
  2585.        EXPAND (' ', 17),
  2586.        'SYSTEM                        ',
  2587.        0,
  2588.        0,
  2589.        0,
  2590.        0,
  2591.        0
  2592.     FROM dual
  2593.        WHERE 0 = 1
  2594. *
  2595. GRANT ALL ON dba_extents TO PUBLIC
  2596. *
  2597.  
  2598. CREATE VIEW dba_free_space
  2599.       (tablespace_name, file_id, block_id, bytes, blocks)
  2600.     AS SELECT
  2601.        'SYSTEM                        ',
  2602.        0,
  2603.        1,
  2604.        0,
  2605.        0
  2606.     FROM dual
  2607.        WHERE 0 = 1
  2608. *
  2609. GRANT ALL ON dba_free_space TO PUBLIC
  2610. *
  2611.  
  2612. CREATE VIEW dba_indexes
  2613.       (owner, index_name, table_owner, table_name, table_type,
  2614.        uniqueness, tablespace_name, ini_trans, max_trans,
  2615.        initial_extent, next_extent, min_extents, max_extents,
  2616.        pct_increase, pct_free, blevel, leaf_blocks, distinct_keys,
  2617.        avg_leaf_blocks_per_key, avg_data_blocks_per_key,
  2618.        clustering_factor, status)
  2619.     AS SELECT
  2620.         EXPAND (owner,     30),
  2621.         EXPAND (indexname, 30),
  2622.         EXPAND (owner,     30),
  2623.         EXPAND (tablename, 30),
  2624.         'TABLE      ',
  2625.         DECODE (type, ' ', 'NONUNIQUE', type),
  2626.     'SYSTEM                        ',
  2627.         FIXED (NULL),
  2628.     FIXED (NULL),
  2629.     FIXED (NULL),
  2630.     FIXED (NULL),
  2631.     FIXED (NULL),
  2632.     FIXED (NULL),
  2633.     FIXED (NULL),
  2634.     FIXED (NULL),
  2635.     FIXED (NULL),
  2636.     FIXED (NULL),
  2637.     distinctvalues,
  2638.     FIXED (NULL),
  2639.     FIXED (NULL),
  2640.     FIXED (NULL),
  2641.     'VALID      '
  2642.     FROM sysdd.db_indexes
  2643.       where indexname <> ' ' AND columnno = 1
  2644. *
  2645. GRANT ALL ON dba_indexes TO PUBLIC
  2646. *
  2647.  
  2648. create view dba_ind_columns
  2649.       (index_owner, index_name, table_owner, table_name,
  2650.        column_name, column_position, column_length)
  2651.     AS SELECT
  2652.         EXPAND (owner,      30),
  2653.         EXPAND (indexname,  30),
  2654.         EXPAND (owner,      30),
  2655.         EXPAND (tablename,  30),
  2656.         EXPAND (columnname, 30),
  2657.         columnno,
  2658.         DECODE (datatype, 'NUMBER', 22,
  2659.                           'FLOAT',  22,
  2660.                           'DATE',   7,
  2661.                           'LONG',   28,
  2662.                                     len)
  2663.     FROM sysdd.db_indexes
  2664.       WHERE indexname <> ' '
  2665. *
  2666. GRANT ALL ON dba_ind_columns TO PUBLIC
  2667. *
  2668.  
  2669. CREATE VIEW dba_locks
  2670.       (session_id, type, mode_held, mode_requested, lock_id1, lock_id2)
  2671.   AS SELECT
  2672.        0,
  2673.        'LS',
  2674.        'NONE',
  2675.        'NONE',
  2676.        0,
  2677.        0
  2678.      FROM dual WHERE 0 = 1
  2679. *
  2680. GRANT ALL ON dba_locks TO PUBLIC
  2681. *
  2682.  
  2683. CREATE VIEW dba_objects
  2684.       (owner, object_name, object_id, object_type, created,
  2685.        last_ddl_time, "TIMESTAMP", status)
  2686.     AS SELECT
  2687.         EXPAND (owner,      30),
  2688.         EXPAND (tablename,  30),
  2689.         tableid,
  2690.         EXPAND (type,       11),
  2691.         TIMESTAMP ("DATE", "TIME"),
  2692.         VALUE (TIMESTAMP (alterdate, altertime),
  2693.                TIMESTAMP ("DATE",    "TIME")),
  2694.         SUBSTR (CHAR ("DATE"), 1, 4) || '-' ||
  2695.         SUBSTR (CHAR ("DATE"), 5, 2) || '-' ||
  2696.         SUBSTR (CHAR ("DATE"), 7, 2) || ':' ||
  2697.         SUBSTR (CHAR ("TIME"), 3, 2) || ':' ||
  2698.         SUBSTR (CHAR ("TIME"), 5, 2) || ':' ||
  2699.         SUBSTR (CHAR ("TIME"), 7, 2),
  2700.     'VALID  '
  2701.     FROM sysdd.db_tables
  2702.   UNION ALL
  2703.     SELECT
  2704.         EXPAND (owner,         30),
  2705.         EXPAND (sequence_name, 30),
  2706.         NO,
  2707.         'SEQUENCE',
  2708.         TIMESTAMP ("DATE", "TIME"),
  2709.         TIMESTAMP ("DATE", "TIME"),
  2710.         SUBSTR (CHAR ("DATE"), 1, 4) || '-' ||
  2711.         SUBSTR (CHAR ("DATE"), 5, 2) || '-' ||
  2712.         SUBSTR (CHAR ("DATE"), 7, 2) || ':' ||
  2713.         SUBSTR (CHAR ("TIME"), 3, 2) || ':' ||
  2714.         SUBSTR (CHAR ("TIME"), 5, 2) || ':' ||
  2715.         SUBSTR (CHAR ("TIME"), 7, 2),
  2716.     'VALID  '
  2717.       FROM sysdd.db_sequences
  2718.   UNION ALL
  2719.     SELECT
  2720.         EXPAND (owner,     30),
  2721.         EXPAND (indexname, 30),
  2722.         NULL,
  2723.         'INDEX',
  2724.         TIMESTAMP ("DATE", "TIME"),
  2725.         TIMESTAMP ("DATE", "TIME"),
  2726.         SUBSTR (CHAR ("DATE"), 1, 4) || '-' ||
  2727.         SUBSTR (CHAR ("DATE"), 5, 2) || '-' ||
  2728.         SUBSTR (CHAR ("DATE"), 7, 2) || ':' ||
  2729.         SUBSTR (CHAR ("TIME"), 3, 2) || ':' ||
  2730.         SUBSTR (CHAR ("TIME"), 5, 2) || ':' ||
  2731.         SUBSTR (CHAR ("TIME"), 7, 2),
  2732.     'VALID  '
  2733.       FROM sysdd.db_indexes
  2734.       WHERE columnno = 1
  2735. *
  2736. GRANT ALL ON dba_objects TO PUBLIC
  2737. *
  2738.  
  2739. CREATE VIEW dba_object_size
  2740.       (owner, name, type, source_size, parsed_size, code_size, error_size)
  2741.   AS SELECT
  2742.        EXPAND (USER, 30),
  2743.        EXPAND (' ', 30),
  2744.        EXPAND (' ', 12),
  2745.        0,
  2746.        0,
  2747.        0,
  2748.        0
  2749.      FROM dual
  2750.      WHERE 0 = 1
  2751. *
  2752. GRANT ALL ON dba_object_size TO PUBLIC
  2753. *
  2754.  
  2755. CREATE VIEW dba_obj_audit_opts
  2756.       (owner, object_name, object_type,
  2757.        alt, aud, com, del, gra, ind, ins, loc, ren, sel, upd, ref, exe)
  2758.     AS SELECT
  2759.         EXPAND (owner,     30),
  2760.         EXPAND (tablename, 30),
  2761.         'TABLE      ',
  2762.         '-/-', '-/-', '-/-', '-/-', '-/-', '-/-', '-/-', '-/-',
  2763.         '-/-', '-/-', '-/-', '-/-', '-/-'
  2764.      FROM sysdd.db_tables
  2765.         WHERE type = 'TABLE'
  2766.     UNION ALL SELECT
  2767.         EXPAND (owner,     30),
  2768.         EXPAND (tablename, 30),
  2769.         'VIEW       ',
  2770.         '-/-', '-/-', '-/-', '-/-', '-/-', '-/-', '-/-', '-/-',
  2771.         '-/-', '-/-', '-/-', '-/-', '-/-'
  2772.     FROM sysdd.db_views
  2773. *
  2774. GRANT ALL ON dba_obj_audit_opts TO PUBLIC
  2775. *
  2776.  
  2777. CREATE VIEW dba_priv_audit_opts
  2778.       (user_name, privilege, success, failure)
  2779.   AS SELECT
  2780.        EXPAND (' ', 30),
  2781.        EXPAND (' ', 40),
  2782.        EXPAND (' ', 10),
  2783.        EXPAND (' ', 10)
  2784.      FROM dual
  2785.      WHERE 0 = 1
  2786. *
  2787. GRANT ALL ON dba_priv_audit_opts TO PUBLIC
  2788. *
  2789.  
  2790. CREATE VIEW dba_profiles
  2791.       (profile, resource_name, limit)
  2792.   AS SELECT
  2793.        EXPAND (' ', 30),
  2794.        EXPAND (' ', 32),
  2795.        EXPAND (' ', 40)
  2796.      FROM dual
  2797.      WHERE 0 = 1
  2798. *
  2799. GRANT ALL ON dba_profiles TO PUBLIC
  2800. *
  2801.  
  2802. CREATE VIEW dba_roles
  2803.       (role, password_required)
  2804.   AS SELECT
  2805.        EXPAND (' ', 30),
  2806.        EXPAND (' ', 8)
  2807.      FROM dual
  2808.      WHERE 0 = 1
  2809. *
  2810. GRANT ALL ON dba_roles TO PUBLIC
  2811. *
  2812.  
  2813. CREATE VIEW dba_role_privs
  2814.       (grantee, granted_role, admin_option, default_role)
  2815.   AS SELECT
  2816.        EXPAND (USER, 30),
  2817.        EXPAND (USER, 30),
  2818.        'NO ',
  2819.        'NO '
  2820.      FROM dual
  2821.        WHERE 0 = 1
  2822. *
  2823. GRANT ALL ON dba_role_privs TO PUBLIC
  2824. *
  2825.  
  2826. CREATE VIEW dba_rollback_segs
  2827.       (segment_name, owner, tablespace_name, segment_id, file_id, block_id,
  2828.        initial_extent, next_extent, min_extents, max_extents,
  2829.        pct_increase, status, instance_num)
  2830.     AS SELECT
  2831.        EXPAND (' ', 30),
  2832.        EXPAND (' ', 30),
  2833.        'SYSTEM                        ',
  2834.        0,
  2835.        0,
  2836.        0,
  2837.        0,
  2838.        0,
  2839.        0,
  2840.        0,
  2841.        0,
  2842.        ' ',
  2843.        0
  2844.     FROM dual
  2845.        WHERE 0 = 1
  2846. *
  2847. GRANT ALL ON dba_rollback_segs TO PUBLIC
  2848. *
  2849.  
  2850. CREATE VIEW dba_segments
  2851.       (owner, segment_name, segment_type, tablespace_name,
  2852.        header_file, header_block, bytes, blocks, extents,
  2853.        initial_extent, next_extent, min_extents, max_extents,
  2854.        pct_increase, freelists, freelist_groups)
  2855.     AS SELECT
  2856.         EXPAND (owner, 30),
  2857.         EXPAND (tablename, 81),
  2858.         'TABLE            ',
  2859.         'SYSTEM                        ',
  2860.         FIXED (NULL),
  2861.     FIXED (NULL),
  2862.     FIXED (NULL),
  2863.     FIXED (NULL),
  2864.     FIXED (NULL),
  2865.     FIXED (NULL),
  2866.     FIXED (NULL),
  2867.     FIXED (NULL),
  2868.     FIXED (NULL),
  2869.     FIXED (NULL),
  2870.     FIXED (NULL),
  2871.     FIXED (NULL)
  2872.     FROM sysdd.db_tables
  2873.     WHERE type = 'TABLE'
  2874. *
  2875. GRANT ALL ON dba_segments TO PUBLIC
  2876. *
  2877.  
  2878. CREATE VIEW dba_sequences
  2879.       (sequence_owner, sequence_name, min_value, max_value, increment_by,
  2880.        cycle_flag, order_flag, cache_size, last_number)
  2881.     AS SELECT
  2882.         EXPAND (owner,         30),
  2883.         EXPAND (sequence_name, 30),
  2884.         min_value,
  2885.         max_value,
  2886.         increment_by,
  2887.         cycle_flag,
  2888.         order_flag,
  2889.         cache_size,
  2890.         last_number
  2891.     FROM sysdd.db_sequences
  2892. *
  2893. GRANT ALL ON dba_sequences TO PUBLIC
  2894. *
  2895.  
  2896. CREATE VIEW dba_snapshots
  2897.        (owner, name, table_name,
  2898.         master_view, master_owner, master, master_link,
  2899.     can_use_log, last_refresh, error, type, "NEXT", start_with, query)
  2900.   AS SELECT
  2901.        EXPAND (owner,            30),
  2902.        EXPAND (tablename,        30),
  2903.        EXPAND (NULL,             30),
  2904.        EXPAND (master_owner,     30),
  2905.        EXPAND (master_tablename, 30),
  2906.        EXPAND (NULL,             30),
  2907.        EXPAND (NULL,             30),
  2908.        fast_refreshable,
  2909.        TIMESTAMP (NULL, NULL),
  2910.        FIXED (NULL),
  2911.        'FORCE   ',
  2912.        EXPAND (NULL, 254),
  2913.        TIMESTAMP (NULL, NULL),
  2914.        definition
  2915.      FROM sysdd.db_snapshots
  2916. *
  2917. GRANT ALL ON dba_snapshots TO PUBLIC
  2918. *
  2919.  
  2920. CREATE VIEW dba_snapshot_logs
  2921.       (log_owner, master, log_table, log_trigger, current_snapshots)
  2922.   AS SELECT
  2923.        EXPAND (owner,                 30),
  2924.        EXPAND (tablename,             30),
  2925.        EXPAND ('MLOG$_' || tablename, 30),
  2926.        EXPAND (NULL, 30),
  2927.        TIMESTAMP (NULL, NULL)
  2928.      FROM sysdd.tables
  2929.      WHERE snapshot_log = 'YES'
  2930. *
  2931. GRANT ALL ON dba_snapshot_logs TO PUBLIC
  2932. *
  2933.  
  2934. CREATE VIEW dba_source
  2935.       (owner, name, type, line, text)
  2936.   AS SELECT
  2937.        EXPAND (USER, 30),
  2938.        EXPAND (' ',  30),
  2939.        EXPAND (' ',  11),
  2940.        1,
  2941.        EXPAND (' ',  200)
  2942.      FROM dual
  2943.      WHERE 0 = 1
  2944. *
  2945. GRANT ALL ON dba_source TO PUBLIC
  2946. *
  2947.  
  2948. CREATE VIEW dba_stmt_audit_opts
  2949.       (user_name, audit_option, success, failure)
  2950.   AS SELECT
  2951.        EXPAND (USER, 30),
  2952.        '-/-', '-/-', '-/-'
  2953.     FROM dual
  2954.       WHERE 0 = 1
  2955. *
  2956. GRANT ALL ON dba_stmt_audit_opts TO PUBLIC
  2957. *
  2958.  
  2959. CREATE VIEW dba_synonyms
  2960.       (owner, synonym_name, table_owner, table_name, db_link)
  2961.     AS SELECT
  2962.         EXPAND (synonymowner, 30),
  2963.         EXPAND (synonymname,  30),
  2964.         EXPAND (owner,        30),
  2965.         EXPAND (tablename,    30),
  2966.         EXPAND (NULL,         30)
  2967.     FROM sysdd.db_synonyms
  2968. *
  2969. GRANT ALL ON dba_synonyms TO PUBLIC
  2970. *
  2971.  
  2972. CREATE VIEW dba_sys_privs
  2973.       (grantee, privilege, admin_option)
  2974.   AS SELECT
  2975.        EXPAND (USER, 30),
  2976.        EXPAND (' ',  40),
  2977.        'NO '
  2978.      FROM dual
  2979.      WHERE 0 = 1
  2980. *
  2981. GRANT ALL ON dba_sys_privs TO PUBLIC
  2982. *
  2983.  
  2984. CREATE VIEW dba_tables
  2985.       (owner, table_name, tablespace_name, cluster_name,
  2986.        pct_free, pct_used, ini_trans, max_trans,
  2987.        initial_extent, next_extent, min_extents, max_extents, pct_increase,
  2988.        backed_up, num_rows, blocks, empty_blocks, avg_space, chain_cnt,
  2989.        avg_row_len)
  2990.     AS SELECT
  2991.         EXPAND (owner,     30),
  2992.         EXPAND (tablename, 30),
  2993.     'SYSTEM                        ',
  2994.         NULL,
  2995.         FIXED (NULL),
  2996.     FIXED (NULL),
  2997.     FIXED (NULL),
  2998.     FIXED (NULL),
  2999.     FIXED (NULL),
  3000.     FIXED (NULL),
  3001.     FIXED (NULL),
  3002.     FIXED (NULL),
  3003.     FIXED (NULL),
  3004.     'N',
  3005.         FIXED (NULL),
  3006.     FIXED (NULL),
  3007.     FIXED (NULL),
  3008.     FIXED (NULL),
  3009.     FIXED (NULL),
  3010.     FIXED (NULL)
  3011.       FROM sysdd.db_tables
  3012.         WHERE type = 'TABLE'
  3013. *
  3014. GRANT ALL ON dba_tables TO PUBLIC
  3015. *
  3016.  
  3017. CREATE VIEW dba_tablespaces
  3018.       (tablespace_name, initial_extent, next_extent, min_extents, max_extents,
  3019.        pct_increase, status)
  3020.      AS SELECT
  3021.        'SYSTEM                        ',
  3022.        999999999999999999,
  3023.        0,
  3024.        1,
  3025.        1,
  3026.        0,
  3027.        'UNDEFINED'
  3028.      FROM dual
  3029.        WHERE 0=1
  3030. *
  3031. GRANT ALL ON dba_tablespaces TO PUBLIC
  3032. *
  3033.  
  3034. CREATE VIEW dba_tab_columns
  3035.             (owner, table_name, column_name,
  3036.             data_type, data_length, data_precision, data_scale,
  3037.             nullable, column_id, default_length, data_default,
  3038.         num_distinct, low_value, high_value, density)
  3039.     AS SELECT
  3040.         EXPAND (owner,      30),
  3041.         EXPAND (tablename,  30),
  3042.         EXPAND (columnname, 30),
  3043.         DECODE (datatype, 'CHAR',    DECODE (code, 'BYTE', 'RAW', 'VARCHAR2'),
  3044.                           'FLOAT',   DECODE (len, NULL, 'NUMBER', 'FLOAT'),
  3045.                           'VARCHAR', 'VARCHAR2',
  3046.                                      SUBSTR (datatype, 1, 9)),
  3047.         DECODE (datatype, 'NUMBER',  22,
  3048.                           'FLOAT',   22,
  3049.                           'DATE',    7,
  3050.                           'LONG',    28,
  3051.                                      len),
  3052.         DECODE (datatype, 'NUMBER', len, 'FLOAT', len),
  3053.         DECODE (datatype, 'NUMBER', dec),
  3054.         DECODE (mod || DECODE ("DEFAULT", NULL, '-NOD'), 'OPT-NOD', 'Y', 'N'),
  3055.         columnno,
  3056.         DECODE (datatype, 'NUMBER', LENGTH (LTRIM ("DEFAULT")),
  3057.                           'FLOAT',  LENGTH (LTRIM ("DEFAULT")),
  3058.                                     LENGTH ("DEFAULT"))
  3059.         +
  3060.         DECODE (mod, 'OPT', 0, 1),
  3061.         "DEFAULT",
  3062.         distinctvalues,
  3063.         HEX (NULL),
  3064.     HEX (NULL),
  3065.     FIXED (NULL)
  3066.       FROM sysdd.db_columns
  3067. *
  3068. GRANT ALL ON dba_tab_columns TO PUBLIC
  3069. *
  3070.  
  3071. CREATE VIEW dba_tab_comments
  3072.       (owner, table_name, table_type, comments)
  3073.     AS SELECT
  3074.         EXPAND (owner,     30),
  3075.         EXPAND (tablename, 30),
  3076.         EXPAND (type,      11),
  3077.         comment_c
  3078.     FROM sysdd.db_tables
  3079. *
  3080. GRANT ALL ON dba_tab_comments TO PUBLIC
  3081. *
  3082.  
  3083. CREATE VIEW dba_tab_privs
  3084.       (grantee, owner, table_name, grantor, privilege, grantable)
  3085.     AS SELECT
  3086.         EXPAND (grantee,   30),
  3087.         EXPAND (owner,     30),
  3088.         EXPAND (name1,     30),
  3089.         EXPAND (grantor,   30),
  3090.         RTRIM  (privileges, '+'),
  3091.         DECODE (INDEX (privileges, '+'), 0, 'NO', 'YES')
  3092.     FROM sysdd.db_new_privileges
  3093.        WHERE name2 IS NULL
  3094. *
  3095. GRANT ALL ON dba_tab_privs TO PUBLIC
  3096. *
  3097.  
  3098. CREATE VIEW dba_triggers
  3099.       (owner, trigger_name, trigger_type, triggering_event,
  3100.        table_owner, table_name, referencing_names, when_clause,
  3101.        status, description, trigger_body)
  3102.   AS SELECT
  3103.        EXPAND (owner,       30),
  3104.        EXPAND (triggername, 30),
  3105.        'AFTER EACH ROW  ',
  3106.        DECODE (SUBSTR (insert, 1, 1) ||
  3107.                SUBSTR (update, 1, 1) ||
  3108.                SUBSTR (delete, 1, 1),
  3109.                'YNN', 'INSERT',
  3110.            'NYN', 'UPDATE',
  3111.            'NNY', 'DELETE',
  3112.            'YYN', 'INSERT OR UPDATE',
  3113.            'YNY', 'INSERT OR DELETE',
  3114.            'NYY', 'UPDATE OR DELETE',
  3115.            'YYY', 'INSERT OR UPDATE OR DELETE',
  3116.                       'ERROR'),
  3117.        EXPAND (owner,     30),
  3118.        EXPAND (tablename, 30),
  3119.        EXPAND (NULL,      87),
  3120.        EXPAND (NULL,      200),
  3121.        'ENABLED ',
  3122.        definition_c,
  3123.        NULL
  3124.      FROM sysdd.db_triggers
  3125. *
  3126. GRANT ALL ON dba_triggers TO PUBLIC
  3127. *
  3128.  
  3129. CREATE VIEW dba_trigger_cols
  3130.       (trigger_owner, trigger_name,
  3131.        table_owner, table_name, column_name, column_list, column_usage)
  3132.   AS SELECT
  3133.        EXPAND (' ', 30),
  3134.        EXPAND (' ', 30),
  3135.        EXPAND (' ', 30),
  3136.        EXPAND (' ', 30),
  3137.        EXPAND (' ', 30),
  3138.        'NO ',
  3139.        EXPAND (' ', 17)
  3140.      FROM dual
  3141.      WHERE 0 = 1
  3142. *
  3143. GRANT ALL ON dba_trigger_cols TO PUBLIC
  3144. *
  3145.  
  3146. CREATE VIEW dba_ts_quotas
  3147.       (tablespace_name, username, bytes, max_bytes, blocks, max_blocks)
  3148.    AS SELECT 'SYSTEM                        ',
  3149.              EXPAND (' ', 30),
  3150.              0,
  3151.              999999999999999999,
  3152.              0,
  3153.              999999999999999999
  3154.         FROM dual
  3155.         WHERE 0 = 1
  3156. *
  3157. GRANT ALL ON dba_ts_quotas TO PUBLIC
  3158. *
  3159.  
  3160. CREATE VIEW dba_users
  3161.       (username, user_id, password,
  3162.        default_tablespace, temporary_tablespace, created, profile)
  3163.     AS SELECT
  3164.         EXPAND (username, 30),
  3165.         user_id,
  3166.         EXPAND (NULL,     30),
  3167.         'SYSTEM                        ',
  3168.     'SYSTEM                        ',
  3169.         TIMESTAMP ("DATE", "TIME"),
  3170.     EXPAND (NULL, 30)
  3171.     FROM sysdd.db_users
  3172. *
  3173. GRANT ALL ON dba_users TO PUBLIC
  3174. *
  3175.  
  3176. CREATE VIEW dba_views
  3177.       (owner, view_name, text_length, text)
  3178.     AS SELECT
  3179.         EXPAND (owner,     30),
  3180.         EXPAND (tablename, 30),
  3181.         len,
  3182.         definition
  3183.     FROM sysdd.db_views
  3184. *
  3185. GRANT ALL ON dba_views TO PUBLIC
  3186. *
  3187.  
  3188. CREATE VIEW dba_waiters
  3189.       (waiting_session, holding_session, type, mode_held, mode_requested,
  3190.        lock_id1, lock_id2)
  3191.   AS SELECT
  3192.        0,
  3193.        0,
  3194.        'LS',
  3195.        'EXCLUSIVE',
  3196.        'EXCLUSIVE',
  3197.        0,
  3198.        0
  3199.      FROM dual
  3200. *
  3201. GRANT ALL ON dba_waiters TO PUBLIC
  3202. *
  3203.  
  3204. END INIT SERVERDB
  3205. *
  3206. SQLMODE ADABAS
  3207. *
  3208. USE USER &u
  3209. *
  3210.