home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1996 February / PCWK0296.iso / po7_win / db / rdbms71 / sql.bsq < prev    next >
Text File  |  1994-08-07  |  72KB  |  1,373 lines

  1. rem 
  2. rem $Header: sql.bsq 7010300.2 94/04/04 02:36:00 snataraj Generic<base> $ sql.bsq 
  3. rem 
  4. create tablespace SYSTEM datafile "D_DBFN" 
  5.   default storage (initial 10K next 10K) online
  6. /
  7. create rollback segment SYSTEM tablespace SYSTEM
  8.   storage (initial 50K next 50K)
  9. /
  10. create cluster c_obj# (obj# number)
  11.   pctfree 5 size 800                           /* don't waste too much space */
  12.   /* A table of 32 cols, 2 index, 2 col per index requires about 2K.
  13.    * A table of 10 cols, 2 index, 2 col per index requires about 750.
  14.    */
  15.   storage (initial 120K)              /* avoid space management during IOR I */
  16. /
  17. create index i_obj# on cluster c_obj#
  18. /
  19. create table tab$                                             /* table table */
  20. ( obj#             number not null,                            /* object number */
  21.   ts#        number not null,                        /* tablespace number */
  22.   file#        number not null,               /* segment header file number */
  23.   block#    number not null,              /* segment header block number */
  24.   clu#          number,      /* cluster object number, NULL if not clustered */
  25.   tab#        number,    /* table number in cluster, NULL if not clustered */
  26.   cols          number not null,            /* number of columns */
  27.   clucols       number,/* number of clustered columns, NULL if not clustered */
  28.   pctfree$      number not null, /* minimum free space percentage in a block */
  29.   pctused$      number not null, /* minimum used space percentage in a block */
  30.   initrans      number not null,            /* initial number of transaction */
  31.   maxtrans      number not null,            /* maximum number of transaction */
  32.   modified      number not null,                               /* dirty bit: */
  33.                 /* 0 = unmodified since last backup, 1 = modified since then */
  34.   audit$    varchar2("S_OPFL") not null,             /* auditing options */
  35.   rowcnt        number,                                    /* number of rows */
  36.   blkcnt        number,                                  /* number of blocks */
  37.   empcnt        number,                            /* number of empty blocks */
  38.   avgspc        number,                      /* average available free space */
  39.   chncnt        number,                            /* number of chained rows */
  40.   avgrln        number,                                /* average row length */
  41.   spare1        number,           /* parallel (0 = no, 1 = yes, >1 = degree) */
  42.   spare2        number)          /* cache (0 = no, 1 = yes, >1 = partitions) */
  43. cluster c_obj#(obj#)
  44. /  
  45. create table clu$                        /* cluster table */
  46. ( obj#         number not null,                            /* object number */
  47.   ts#        number not null,                        /* tablespace number */
  48.   file#        number not null,               /* segment header file number */
  49.   block#    number not null,              /* segment header block number */
  50.   cols          number not null,            /* number of columns */
  51.   pctfree$      number not null, /* minimum free space percentage in a block */
  52.   pctused$      number not null, /* minimum used space percentage in a block */
  53.   initrans      number not null,            /* initial number of transaction */
  54.   maxtrans      number not null,            /* maximum number of transaction */
  55.   size$         number,
  56.        /* if b-tree, estimated number of bytes for each cluster key and rows */
  57.   hashfunc      varchar2("M_IDEN"),        /* if hashed, function identifier */
  58.  
  59.   /* Some of the spare columns may give the initial # bytes in the hash table
  60.    * and the # hash keys per block.  These are user-specified parameters.
  61.    * For extendible hash tables, two columns might include the # bits
  62.    * currently be used in the hash function and the number of the next
  63.    * bucket to split.
  64.    * Some spare columns may be used for hash table statistics
  65.    * such as # distinct keys, # distinct values of first key column, and
  66.    * average # blocks per key.  Some spare columns  may give the number of
  67.    * the cluster table for which the cluster key is unique or indicate
  68.    * whether the cluster is normal or referential.
  69.    * We can encode multiple pieces of info in a single column.
  70.    */
  71.   hashkeys      number,                                    /* hash key count */
  72.   func          number, /* function: 0 (key is function), 1 (system default) */
  73.   extind        number,             /* extent index value of fixed hash area */
  74.   spare4        number,                          /* the average chain length */
  75.   spare5        number,           /* parallel (0 = no, 1 = yes, >1 = degree) */
  76.   spare6        number,          /* cache (0 = no, 1 = yes, >1 = partitions) */
  77.   spare7        number,
  78.   spare8        number,
  79.   spare9        number
  80. )
  81. cluster c_obj#(obj#)
  82. /
  83. create cluster c_ts#(ts# number)           /* use entire block for each ts# */
  84. /
  85. create index i_ts# on cluster c_ts#
  86. /
  87. create cluster c_file#_block#(segfile# number, segblock# number) 
  88.   size 225    /* cluster key ~ 25, sizeof(seg$) ~ 50, 5 * sizeof(uet$) ~ 150 */
  89.   storage (initial 20K)               /* avoid space management during IOR I */
  90. /
  91. create index i_file#_block# on cluster c_file#_block#
  92. /
  93. create cluster c_user#(user# number) 
  94.   size  315 /* cluster key ~ 20, sizeof(user$) ~ 170, 5 * sizeof(tsq$) ~ 125 */
  95. /
  96. create index i_user# on cluster c_user#
  97. /
  98. create table fet$                                       /* free extent table */
  99. ( ts#           number not null,        /* tablespace containing free extent */
  100.   file#         number not null,              /* file containing free extent */
  101.   block#        number not null,              /* starting dba of free extent */
  102.   length        number not null)          /* length in blocks of free extent */
  103. cluster c_ts#(ts#)
  104. /
  105. create table uet$                                       /* used extent table */
  106. ( segfile#      number not null,               /* segment header file number */
  107.   segblock#     number not null,              /* segment header block number */
  108.   ext#          number not null,         /* extent number within the segment */
  109.   ts#           number not null,        /* tablespace containing this extent */
  110.   file#         number not null,              /* file containing this extent */
  111.   block#        number not null,              /* starting dba of this extent */
  112.   length        number not null)          /* length in blocks of this extent */
  113. cluster c_file#_block#(segfile#, segblock#)
  114. /
  115. create table seg$                                           /* segment table */
  116. ( file#         number not null,               /* segment header file number */
  117.   block#        number not null,              /* segment header block number */
  118.   type          number not null,                /* segment type (see KTS.H): */
  119.    /* 1 = UNDO, 2 = SAVE UNDO, 3 = TEMPORARY, 4 = CACHE, 5 = DATA, 6 = INDEX */
  120.   ts#           number not null,       /* tablespace containing this segment */
  121.   blocks        number not null,       /* blocks allocated to segment so far */
  122.   extents       number not null,      /* extents allocated to segment so far */
  123.   iniexts       number not null,                      /* initial extent size */
  124.   minexts       number not null,                /* minimum number of extents */
  125.   maxexts       number not null,                /* maximum number of extents */
  126.   extsize       number not null,                 /* initial next extent size */
  127.   extpct        number not null,                    /* percent size increase */
  128.   user#         number not null,               /* user who owns this segment */
  129.   lists            number,                        /* freelists for this segment */
  130.   groups        number)                  /* freelist groups for this segment */
  131. cluster c_file#_block#(file#, block#)
  132. /
  133. create table undo$                                     /* undo segment table */
  134. ( us#           number not null,                      /* undo segment number */
  135.   name          varchar2("M_IDEN") not null,    /* name of this undo segment */
  136.   user#         number not null,      /* owner: 0 = SYS(PRIVATE), 1 = PUBLIC */
  137.   file#         number not null,               /* segment header file number */
  138.   block#        number not null,              /* segment header block number */
  139.   scnbas        number,           /* highest commit time in rollback segment */
  140.   scnwrp        number,              /* scnbas - scn base, scnwrp - scn wrap */
  141.   xactsqn       number,               /* highest transaction sequence number */
  142.   undosqn       number,                /* highest undo block sequence number */
  143.   inst#         number,    /* parallel server instance that owns the segment */
  144.   status$       number not null)              /* segment status (see KTS.H): */
  145.   /* 1 = INVALID, 2 = AVAILABLE, 3 = IN USE, 4 = OFFLINE, 5 = NEED RECOVERY, 
  146.    * 6 = PARTLY AVAILABLE (contains in-doubt txs) 
  147.    */
  148. /
  149. create table ts$                                         /* tablespace table */
  150. ( ts#           number not null,             /* tablespace identifier number */
  151.   name          varchar2("M_IDEN") not null,           /* name of tablespace */
  152.   owner#        number not null,                      /* owner of tablespace */
  153.   online$       number not null,                      /* status (see KTT.H): */
  154.                                      /* 1 = ONLINE, 2 = OFFLINE, 3 = INVALID */
  155.   undofile#     number,  /* undo_off segment file number (status is OFFLINE) */
  156.   undoblock#    number,               /* undo_off segment header file number */
  157.   blocksize     number not null,                   /* size of block in bytes */
  158.   inc#          number not null,             /* incarnation number of extent */
  159.   scnwrp    number,     /* clean offline scn - zero if not offline clean */
  160.   scnbas        number,              /* scnbas - scn base, scnwrp - scn wrap */
  161.   dflminext     number not null,       /*  default minimum number of extents */
  162.   dflmaxext     number not null,        /* default maximum number of extents */
  163.   dflinit       number not null,              /* default initial extent size */
  164.   dflincr       number not null,                 /* default next extent size */
  165.   dflextpct     number not null)     /* default percent extent size increase */
  166. cluster c_ts#(ts#)
  167. /
  168. create table file$                                             /* file table */
  169. ( file#         number not null,                   /* file identifier number */
  170.   status$       number not null,                      /* status (see KTS.H): */
  171.                                                /* 1 = INVALID, 2 = AVAILABLE */
  172.   blocks        number not null,                   /* size of file in blocks */
  173.   ts#           number not null)                /* tablespace that owns file */
  174. /
  175. create table obj$                                            /* object table */
  176. ( obj#          number not null,                            /* object number */
  177.   owner#        number not null,                        /* owner user number */
  178.   name        varchar2("M_IDEN") not null,              /* object name */
  179.   namespace     number not null,         /* namespace of object (see KQD.H): */
  180.        /* 1 = TABLE/PROCEDURE, 2 = BODY, 3 = TRIGGER, 4 = INDEX, 5 = CLUSTER */
  181.   type          number not null,                 /* object type (see KQD.H): */
  182.   /* 1 = INDEX, 2 = TABLE, 3 = CLUSTER, 4 = VIEW, 5 = SYNONYM, 6 = SEQUENCE, */
  183.              /* 7 = PROCEDURE, 8 = FUNCTION, 9 = PACKAGE, 10 = NON-EXISTENT, */
  184.                                           /* 11 = PACKAGE BODY, 12 = TRIGGER */
  185.   ctime        date not null,                       /* object creation time */
  186.   mtime        date not null,                      /* DDL modification time */
  187.   stime        date not null,          /* specification timestamp (version) */
  188.   status        number not null,            /* status of object (see KQD.H): */
  189.                                      /* 1 = VALID/AUTHORIZED WITHOUT ERRORS, */
  190.                           /* 2 = VALID/AUTHORIZED WITH AUTHORIZATION ERRORS, */
  191.                             /* 3 = VALID/AUTHORIZED WITH COMPILATION ERRORS, */
  192.                          /* 4 = VALID/UNAUTHORIZED, 5 = INVALID/UNAUTHORIZED */
  193.   remoteowner   varchar2("M_IDEN"),    /* remote owner name (remote object) */
  194.   linkname      varchar2("M_XDBI"))            /* link name (remote object) */
  195. /
  196. create table ind$                                             /* index table */
  197. ( obj#          number not null,                /* object number */
  198.   ts#        number not null,                        /* tablespace number */
  199.   file#        number not null,               /* segment header file number */
  200.   block#    number not null,              /* segment header block number */
  201.   bo#        number not null,          /* object number of base table */
  202.   cols          number not null,            /* number of columns */
  203.   pctfree$      number not null, /* minimum free space percentage in a block */
  204.   initrans      number not null,            /* initial number of transaction */
  205.   maxtrans      number not null,            /* maximum number of transaction */
  206.   compress$     number not null,       /* 0 = not compressed, 1 = compressed */
  207.   unique$       number not null,               /* 0 = not unique, 1 = unique */
  208.                                             /* future: 2 = ansi-style unique */
  209.   /* The following spare columns may be used for index statistics such
  210.    * as # btree levels, # btree leaf blocks, # distinct keys, 
  211.    * # distinct values of first key column, average # leaf blocks per key,
  212.    * clustering info, and # blocks in index segment.
  213.    */
  214.   blevel        number,                                       /* btree level */
  215.   leafcnt       number,                                  /* # of leaf blocks */
  216.   distkey       number,                                   /* # distinct keys */
  217.   lblkkey       number,                          /* avg # of leaf blocks/key */
  218.   dblkkey       number,                          /* avg # of data blocks/key */
  219.   clufac        number,                                 /* clustering factor */
  220.   spare7        number,
  221.   spare8        number
  222. )
  223. cluster c_obj#(bo#)
  224. /
  225. create table icol$                                     /* index column table */
  226. ( obj#          number not null,                      /* index object number */
  227.   bo#           number not null,               /* base object number */
  228.   col#          number not null,                            /* column number */
  229.   pos#          number not null,        /* column position number as created */
  230.   segcol#       number not null,         /* column number in segment */
  231.   segcollength  number not null,             /* length of the segment column */
  232.   offset        number not null)                         /* offset of column */
  233. cluster c_obj#(bo#)
  234. /
  235. create table col$                                            /* column table */
  236. ( obj#          number not null,             /* object number of base object */
  237.   col#        number not null,                 /* column number as created */
  238.   segcol#    number not null,         /* column number in segment */
  239.   segcollength  number not null,             /* length of the segment column */
  240.   offset        number not null,                         /* offset of column */
  241.   name        varchar2("M_IDEN") not null,           /* name of column */
  242.   type#          number  not null,              /* data type of column */
  243.   length    number  not null,        /* length of column in bytes */
  244.   fixedstorage  number  not null,                /* 0 = not fixed, 1 = fixed */
  245.   precision     number,                                         /* precision */
  246.   scale         number,                                             /* scale */
  247.   null$         number not null,                     /* 0 = NULLs permitted, */
  248.                                                 /* > 0 = no NULLs permitted  */
  249.   distcnt       number,                              /* # of distinct values */
  250.   lowval        raw(32),/* lowest value of column (second lowest if default) */
  251.   hival         raw(32),
  252.                       /* highest value of column (second highest if default) */
  253.   deflength     number,              /* default value expression text length */
  254.   default$      long,                       /* default value expression text */
  255.   /* The spares may be used as the column's NLS character set, 
  256.    * the number of distinct column values, and the column's domain.
  257.    */
  258.   spare2        number,                                     /* density value */
  259.   spare3        number
  260. )
  261. cluster c_obj#(obj#)
  262. /
  263. create table user$                                             /* user table */
  264. ( user#        number not null,                   /* user identifier number */
  265.   name            varchar2("M_IDEN") not null,             /* name of user */
  266.   type          number not null,                       /* 0 = role, 1 = user */
  267.   password    varchar2("M_IDEN"),               /* encrypted password */
  268.   datats#         number not null, /* default tablespace for permanent objects */
  269.   tempts#         number not null,  /* default tablespace for temporary tables */
  270.   ctime         date not null,                 /* user account creation time */
  271.   ptime         date,                            /* password expiration time */
  272.   resource$     number not null,                        /* resource profile# */
  273.   audit$    varchar2("S_OPFL"),                     /* user audit options */
  274.   defrole       number not null,                  /* default role indicator: */
  275.                /* 0 = no roles, 1 = all roles granted, 2 = roles in defrole$ */
  276.   spare1        number,                               /* reserved for future */
  277.   spare2        number)                               /* reserved for future */
  278. cluster c_user#(user#)
  279. /
  280. create table con$                                        /* constraint table */
  281. ( owner#        number not null,                        /* owner user number */
  282.   name          varchar2("M_IDEN") not null,              /* constraint name */
  283.   con#          number not null,                        /* constraint number */
  284.   spare1        number
  285. )
  286. /
  287. create cluster c_cobj# (obj# number)
  288.   pctfree 0 pctused 50
  289.   /* space for: update cdef$ set condition = 'col IS NOT NULL' at // */
  290.   size 300
  291.   storage (initial 50K)               /* avoid space management during IOR I */
  292. /
  293. create index i_cobj# on cluster c_cobj#
  294. /
  295. create table cdef$                            /* constraint definition table */
  296. ( con#          number not null,                        /* constraint number */
  297.   obj#          number not null,         /* object number of base table/view */
  298.   cols          number,                   /* number of columns in constraint */
  299.   type          number not null,                         /* constraint type: */
  300.                             /* 1 = table check, 2 = primary key, 3 = unique, */
  301.                                          /* 4 = referential, 5 = view check, */
  302.                      /* 6 = special for replication logging hook */
  303.                /* 7 - table check constraint associated with column NOT NULL */
  304.   robj#         number,                 /* object number of referenced table */
  305.   rcon#         number,           /* constraint number of referenced columns */
  306.   rrules        varchar2(3),         /* future: use this columns for pendant */
  307.   match         number,                /* referential constraint match type: */
  308.                                                  /* null = FULL, 1 = PARTIAL */
  309.         /* this column can also store information for other constraint types */
  310.   refact        number,                               /* referential action: */
  311.               /* null = RESTRICT, 1 = CASCADE, 2 = SET NULL, 3 = SET DEFAULT */
  312.   enabled        number,          /* is constraint enabled? NULL if disabled */
  313.   condlength    number,                 /* table check condition text length */
  314.   condition     long,                          /* table check condition text */
  315.   spare1        number
  316. )
  317. cluster c_cobj#(obj#)
  318. /
  319. create table ccol$                                /* constraint column table */
  320. ( con#          number not null,                        /* constraint number */
  321.   obj#        number not null,               /* base object number */
  322.   col#          number not null,                            /* column number */
  323.   pos#          number,                 /* column position number as created */
  324.   spare1        number
  325. )
  326. cluster c_cobj#(obj#)
  327. /
  328. create index i_tab1 on tab$(clu#)
  329. /
  330. create unique index i_undo1 on undo$(us#)
  331. /
  332. create unique index i_obj1 on obj$(obj#)
  333. /
  334. create unique index i_obj2 on obj$(owner#, name, namespace,
  335. remoteowner, linkname)
  336. /
  337. create unique index i_ind1 on ind$(obj#)
  338. /
  339. create index i_icol1 on icol$(obj#)
  340. /
  341. create unique index i_file1 on file$(file#)
  342. /
  343. create unique index i_user1 on user$(name)
  344. /
  345. create unique index i_col1 on col$(obj#, name)
  346.   storage (initial 30k)
  347. /
  348. create unique index i_col2 on col$(obj#, col#)
  349.   storage (initial 30k)
  350. /
  351. create unique index i_con1 on con$(owner#, name)
  352. /
  353. create unique index i_con2 on con$(con#)
  354. /
  355. create unique index i_cdef1 on cdef$(con#)
  356. /
  357. create index i_cdef2 on cdef$(obj#)
  358. /
  359. create index i_cdef3 on cdef$(robj#)
  360. /
  361. create unique index i_ccol1 on ccol$(con#, col#)
  362. /
  363. create table bootstrap$
  364. ( line#         number not null,                       /* statement order id */
  365.   obj#          number not null,                            /* object number */
  366.   sql_text      varchar2("M_VCSZ") not null)                    /* statement */
  367.   storage (initial 50K)            /* to avoid space management during IOR I */
  368. //                                            /* "//" required for bootstrap */
  369. create table tsq$                                  /* tablespace quota table */
  370. ( ts#           number not null,                        /* tablespace number */
  371.   user#         number not null,                              /* user number */
  372.   grantor#      number not null,                               /* grantor id */
  373.   blocks        number not null,         /* number of blocks charged to user */
  374.   maxblocks     number,     /* user's maximum number of blocks, NULL if none */
  375.   priv1         number not null,            /* reserved for future privilege */
  376.   priv2         number not null,            /* reserved for future privilege */
  377.   priv3         number not null)            /* reserved for future privilege */
  378. cluster c_user# (user#)
  379. /
  380. create table syn$                                           /* synonym table */
  381. ( obj#          number not null,                /* object number */
  382.   node        varchar2("M_XDBI"),               /* node of object */
  383.   owner     varchar2("M_IDEN"),                          /* object owner */
  384.   name        varchar2("M_IDEN") not null)              /* object name */
  385. /
  386. create table view$                                             /* view table */
  387. ( obj#          number not null,                /* object number */
  388.   audit$    varchar2("S_OPFL") not null,         /* auditing options */
  389.   cols          number not null,            /* number of columns */
  390.   textlength    number,                      /* length of view text */
  391.   text          long)                        /* view text */
  392. /
  393. create table seq$
  394. ( obj#            number not null,                            /* object number */
  395.   increment$    number not null,            /* the sequence number increment */
  396.   minvalue      number,                         /* minimum value of sequence */
  397.   maxvalue      number,                         /* maximum value of sequence */
  398.   cycle         number not null,                      /* 0 = FALSE, 1 = TRUE */
  399.   order$        number not null,                      /* 0 = FALSE, 1 = TRUE */
  400.   cache         number not null,                 /* how many to cache in sga */
  401.   highwater     number not null,                     /* disk high water mark */
  402.   audit$    varchar2("S_OPFL") not null)             /* auditing options */
  403. /
  404. create table procedure$                          /* procedure table */
  405. ( obj#          number not null,                /* object number */
  406.   audit$    varchar2("S_OPFL") not null,         /* auditing options */
  407.   storagesize   number,                /* storage size of procedure */
  408.   options       number)                               /* compile options */
  409. /
  410. create table argument$                     /* procedure argument description */
  411. ( obj#           number not null,                           /* object number */
  412.   procedure$     varchar2("M_IDEN"), /* procedure name (if within a package) */
  413.   overload#      number not null,
  414.                 /* 0 = not overloaded, n = unique id of overloaded procedure */
  415.   position       number not null,  /* argument position (0 for return value) */
  416.   sequence#      number not null,
  417.   level#         number not null,
  418.   argument       varchar2("M_IDEN"),/* argument name (null for return value) */
  419.   type           number not null,                           /* argument type */
  420.   default#       number,   /* null = no default value, 1 = has default value */
  421.   in_out         number,                   /* null = IN, 1 = OUT, 2 = IN/OUT */
  422.   length         number,                                      /* data length */
  423.   precision      number,                                /* numeric precision */
  424.   scale          number,                                    /* numeric scale */
  425.   radix          number,                                    /* numeric radix */
  426.   deflength      number,             /* default value expression text length */
  427.   default$       long)                      /* default value expression text */
  428. /
  429. create table source$                             /* source table */
  430. ( obj#          number not null,                /* object number */
  431.   line          number not null,                  /* line number */
  432.   source        varchar2("M_VCSZ"))                           /* source line */
  433. /
  434. create table idl_ub1$                            /* idl table for ub1 pieces */
  435. ( obj#          number not null,                            /* object number */
  436.   part          number not null,
  437.          /* part: 0 = diana, 1 = portable pcode, 2 = machine-dependent pcode */
  438.   version       number,                                    /* version number */
  439.   piece#        number not null,                             /* piece number */
  440.   length        number not null,                             /* piece length */
  441.   piece         long raw not null)                              /* ub1 piece */
  442. /
  443. create table idl_char$                          /* idl table for char pieces */
  444. ( obj#          number not null,                            /* object number */
  445.   part          number not null,
  446.          /* part: 0 = diana, 1 = portable pcode, 2 = machine-dependent pcode */
  447.   version       number,                                    /* version number */
  448.   piece#        number not null,                             /* piece number */
  449.   length        number not null,                             /* piece length */
  450.   piece         long not null)                                 /* char piece */
  451. /
  452. create table idl_ub2$                            /* idl table for ub2 pieces */
  453. ( obj#          number not null,                            /* object number */
  454.   part          number not null,
  455.          /* part: 0 = diana, 1 = portable pcode, 2 = machine-dependent pcode */
  456.   version       number,                                    /* version number */
  457.   piece#        number not null,                             /* piece number */
  458.   length        number not null,                             /* piece length */
  459.   piece         long ub2 not null)                              /* ub2 piece */
  460. /
  461. create table idl_sb4$                            /* idl table for sb4 pieces */
  462. ( obj#          number not null,                            /* object number */
  463.   part          number not null,
  464.          /* part: 0 = diana, 1 = portable pcode, 2 = machine-dependent pcode */
  465.   version       number,                                    /* version number */
  466.   piece#        number not null,                             /* piece number */
  467.   length        number not null,                             /* piece length */
  468.   piece         long sb4 not null)                              /* sb4 piece */
  469. /
  470. create table error$                                           /* error table */
  471. ( obj#          number not null,                            /* object number */
  472.   sequence      number default 0 not null,
  473.                                   /* sequence number (for ordering purposes) */
  474.   line          number not null,                       /* source line number */
  475.   position      number not null,                  /* position in source line */
  476.   textlength    number not null,                 /* length of the error text */
  477.   text          varchar2("M_VCSZ") not null)                   /* error text */
  478. /
  479. create table trigger$                            /* trigger table */
  480. ( obj#        number not null,                /* object number */
  481.   type          number not null,                            /* trigger type: */
  482.         /*  0 = BEFORE TABLE, 1 = BEFORE ROW, 2 = AFTER TABLE, 3 = AFTER ROW */
  483.   update$       number not null,                   /* fire on update */
  484.   insert$       number not null,               /* fire on insert */
  485.   delete$       number not null,               /* fire on delete */
  486.   baseobject     number not null,                       /* triggering object */
  487.   refoldname    varchar2("M_IDEN"),             /* old referencing name */
  488.   refnewname    varchar2("M_IDEN"),             /* new referencing name */
  489.   definition    varchar2("M_VCSZ"),               /* trigger definition */
  490.   whenclause    varchar2("M_VCSZ"),                   /* text of when clause */
  491.   action        long,                                  /* action to fire */
  492.   actionsize    number,                      /* size of action text */
  493.   enabled       number)                /* 0 = DISABLED, 1 = ENABLED */
  494. /
  495. create table triggercol$
  496. ( obj#        number not null,                /* object number */
  497.   col#          number not null,                /* column number */
  498.   type          number not null,                /* type of column reference: */
  499.       /* 2 = OLD IN-ARG, 3 = NEW IN-ARG, 5 = NEW OUT-VAR, 7 = NEW IN/OUT-VAR */
  500.   position      number)                      /* position in trigger */
  501. /
  502. create table objauth$                /* table authorization table */
  503. ( obj#        number not null,                /* object number */
  504.   grantor#    number not null,                      /* grantor user number */
  505.   grantee#    number not null,                      /* grantee user number */
  506.   privilege#     number not null,                   /* table privilege number */
  507.   sequence#    number not null,             /* unique grant sequence */
  508.   parent        rowid,                                             /* parent */
  509.   option$    number,                     /* null = none, 1 = grant option */
  510.   col#          number)     /* null = table level, column id if column grant */
  511. /
  512. create table sysauth$                          /* system authorization table */
  513. ( grantee#     number not null,          /* grantee number (user# or role#) */
  514.   privilege#     number not null,                      /* role or privilege # */
  515.   sequence#    number not null,             /* unique grant sequence */
  516.   option$    number)                     /* null = none, 1 = admin option */
  517. /
  518. create table defrole$                                  /* default role table */
  519. ( user#        number not null,                   /* user id */
  520.   role#        number not null)                /* default role id */
  521. /
  522. create table profile$                                    /* resource profile */
  523. ( profile#    number not null,   /* user$.resource$ and profname$.profile# */
  524.   resource#    number not null,                          /* resource number */
  525.   type        number not null,  /* 0 = kernel resource, else tool resource */
  526.   limit        number not null)                           /* resource limit */
  527. /
  528. create table profname$                /* mapping of profile# to profile name */
  529. ( profile#    number not null,
  530.   name        varchar2("M_IDEN") not null)
  531. /
  532. create table dependency$                                 /* dependency table */
  533. ( d_obj#        number not null,                  /* dependent object number */
  534.   d_timestamp   date not null,   /* dependent object specification timestamp */
  535.   order#        number not null,                             /* order number */
  536.   p_obj#        number not null,             /* parent object number */
  537.   p_timestamp   date not null)      /* parent object specification timestamp */
  538. /
  539. create table access$                             /* access table */
  540. ( d_obj#        number not null,              /* dependent object number */
  541.   order#        number not null,                  /* dependency order number */
  542.   columns       raw("M_BVCO"),                /* list of cols for this entry */
  543.   types         number not null)                             /* access types */
  544. /
  545. /* K_MLS change */
  546. create table lab$
  547. ( lab#          mlslabel not null,         /* internal database label number */
  548.   olab          raw(255),                   /* operating system label number */
  549.   alias         varchar2("M_IDEN"))                  /* alias for label name */
  550. /
  551. create table aud$                    /* audit trail table */
  552. ( sessionid     number not null,
  553.   entryid    number not null,
  554.   statement    number not null,
  555.   timestamp    date not null,
  556.   userid    varchar2("M_IDEN"),
  557.   userhost    varchar2("M_HOST"),
  558.   terminal    varchar2("M_TERM"),
  559.   action    number not null,
  560.   returncode    number not null,
  561.   obj$creator    varchar2("M_IDEN"),
  562.   obj$name    varchar2("M_XDBI"),
  563.   auth$privileges varchar2("S_PRFL"),
  564.   auth$grantee    varchar2("M_IDEN"),
  565.   new$owner     varchar2("M_IDEN"),
  566.   new$name    varchar2("M_XDBI"),
  567.   ses$actions    varchar2("S_ACFL"),
  568.   ses$tid    number,
  569.   logoff$lread    number,
  570.   logoff$pread    number,
  571.   logoff$lwrite number,
  572.   logoff$dead    number,
  573.   logoff$time    date,
  574.   comment$text    varchar2("M_VCSZ"),
  575.   spare1        varchar2(255),
  576.   spare2        number,
  577.   obj$label     raw(255),                                   /* K_MLS changes */
  578.   ses$label     raw(255),
  579.   priv$used     number)
  580. /
  581. create table link$                             /* remote database link table */
  582. ( owner#        number not null,                        /* owner user number */
  583.   name          varchar2("M_XDBI") not null,                  /* link name */
  584.   ctime            date not null,                              /* creation time */
  585.   host            varchar2("M_HOST"),    /* optional driver string for connect */
  586.   userid        varchar2("M_IDEN"),             /* optional user to logon as */
  587.   password      varchar2("M_IDEN"))                    /* password for logon */
  588. /
  589. create table props$
  590. ( name          varchar2("M_IDEN") not null,                /* property name */
  591.   value$        varchar2("M_VCSZ"),                        /* property value */
  592.   comment$      varchar2("M_VCSZ"))               /* description of property */
  593. /
  594. create table com$                                           /* comment table */
  595. ( obj#          number not null,                            /* object number */
  596.   col#          number,               /* column number (NULL if for object) */
  597.   comment$    varchar2("M_VCSZ"))           /* user-specified description */
  598. /
  599. create table resource_cost$
  600. ( resource#    number not null,                         /* 2, 4, 6, 7, 8, 9 */
  601.   cost        number not null)                                     /* >= 0 */
  602. /
  603. insert into resource_cost$ values (0, 0)                         /* not used */
  604. /
  605. insert into resource_cost$ values (1, 0)                /* sessions_per_user */
  606. /
  607. insert into resource_cost$ values (2, 0)                  /* cpu_per_session */
  608. /
  609. insert into resource_cost$ values (3, 0)                         /* not used */
  610. /
  611. insert into resource_cost$ values (4, 0)        /* logical_reads_per_session */
  612. /
  613. insert into resource_cost$ values (5, 0)                         /* not used */
  614. /
  615. insert into resource_cost$ values (6, 0)                         /* not used */
  616. /
  617. insert into resource_cost$ values (7, 0)                     /* connect_time */
  618. /
  619. insert into resource_cost$ values (8, 0)                      /* private_sga */
  620. /
  621. insert into resource_cost$ values (9, 0)                         /* not used */
  622. /
  623. insert into props$ 
  624. values('DICT.BASE', '2', 'dictionary base tables version #')
  625. /
  626. insert into props$ 
  627. values('EXPORT_VIEWS_VERSION', '1', 'Export views revision #')
  628. /
  629. create unique index i_view1 on view$(obj#)
  630. /
  631. create unique index i_syn1 on syn$(obj#)
  632. /
  633. create unique index i_seq1 on seq$(obj#)
  634. /
  635. create unique index i_objauth1 on 
  636.   objauth$(obj#, grantor#, grantee#, privilege#, col#)
  637. /
  638. create index i_objauth2 on objauth$(grantee#, obj#, col#)
  639. /
  640. create unique index i_sysauth1 on sysauth$(grantee#, privilege#)
  641. /
  642. create unique index i_defrole1 on defrole$(user#, role#)
  643. /
  644. create index i_aud1 on aud$(sessionid, ses$tid)
  645. /
  646. create index i_link1 on link$(owner#, name)
  647. /
  648. create unique index i_com1 on com$(obj#, col#)
  649. /
  650. create unique index i_procedure1 on procedure$(obj#)
  651. /
  652. create unique index i_argument1 on 
  653.   argument$(obj#, procedure$, overload#, sequence#)
  654. /
  655. create unique index i_source1 on source$(obj#, line)
  656. /
  657. create unique index i_idl_ub11 on idl_ub1$(obj#, part, version, piece#)
  658. /
  659. create unique index i_idl_char1 on idl_char$(obj#, part, version, piece#)
  660. /
  661. create unique index i_idl_ub21 on idl_ub2$(obj#, part, version, piece#)
  662. /
  663. create unique index i_idl_sb41 on idl_sb4$(obj#, part, version, piece#)
  664. /
  665. create index i_error1 on error$(obj#, sequence)
  666. /
  667. create unique index i_dependency1 on dependency$(d_obj#, d_timestamp, order#)
  668. /
  669. create index i_dependency2 on dependency$(p_obj#, p_timestamp)
  670. /
  671. create index i_trigger1 on trigger$(baseobject)
  672. /                                             
  673. create unique index i_trigger2 on trigger$(obj#)
  674. /
  675. create index i_triggercol on triggercol$(obj#, col#, type, position)
  676. /
  677. create unique index i_profname on profname$(name)
  678. /
  679. create index i_profile on profile$(profile#)
  680. /
  681. /* K_MLS sequence */
  682. create sequence label_translation   /* sequence for translation cache (lab$) */
  683.   increment by 1
  684.   start with 3
  685.   minvalue 3
  686.   nomaxvalue
  687.   cache 20
  688.   order
  689.   nocycle
  690. /
  691. create sequence object_grant                 /* object grant sequence number */
  692.   start with 1
  693.   increment by 1
  694.   minvalue 1
  695.   nomaxvalue
  696.   cache 20
  697.   order
  698.   nocycle
  699. /
  700. create sequence system_grant                 /* system grant sequence number */
  701.   start with 1
  702.   increment by 1
  703.   minvalue 1
  704.   nomaxvalue
  705.   cache 20
  706.   order
  707.   nocycle
  708. /
  709. create sequence profnum$                   /* profile number sequence number */
  710.   increment by 1
  711.   start with 0                              /* profile# for DEFAULT always 0 */
  712.   minvalue 0
  713.   nocache                                           /* don't want to reuse 0 */
  714. /
  715. create profile "DEFAULT" limit            /* default value, always present */
  716.   composite_limit        unlimited                   /* service units */
  717.   sessions_per_user        unlimited              /* logins per user id */
  718.   cpu_per_session        unlimited            /* cpu usage in minutes */
  719.   cpu_per_call            unlimited        /* max cpu minutes per call */
  720.   logical_reads_per_session    unlimited
  721.   logical_reads_per_call    unlimited
  722.   idle_time            unlimited
  723.   connect_time             unlimited
  724.   private_sga            unlimited      /* valid only with TP-monitor */
  725. /
  726. create table incexp                      /* incremental export support table */
  727. ( owner#        number not null,                                 /* owner id */
  728.   name          varchar2("M_IDEN") not null,                  /* object name */
  729.   type            number(1) not null,                           /* object type */
  730.   ctime            date,                      /* time of last cumulative export */
  731.   itime            date not null,            /* time of last incremental export */
  732.   expid         number(3) not null)                             /* export id */
  733. /
  734. create unique index i_incexp on incexp(owner#, name, type)
  735. /
  736. create user sys identified by change_on_install
  737. /
  738. create role public
  739. /
  740. create role connect
  741. /
  742. grant create session,alter session,create synonym,create view,
  743.  create database link,create table,create cluster,create sequence to connect
  744. /
  745. create role resource
  746. /
  747. grant create table,create cluster,create sequence,create trigger,
  748.  create procedure to resource
  749. /
  750. create role dba
  751. /
  752. grant all privileges to dba with admin option
  753. /
  754. create user system identified by manager
  755. /
  756. grant dba to system with admin option
  757. /
  758. grant all on incexp to system
  759. /
  760. create table incvid                    /* incremental valid identifier table */
  761. ( expid         number(3) not null)               /* id of last valid export */
  762. /
  763. insert into incvid(expid) values (0)
  764. /
  765. grant all on incvid to system
  766. /
  767. create table incfil                         /* incremental file export table */
  768. ( expid         number(3) not null,                             /* export id */
  769.   exptype       varchar2(1) not null,                        /* export type: */
  770.                                 /* f - full, i - incremental, c - cumulative */
  771.   expfile       varchar2(100) not null,                  /* export file name */
  772.   expdate       date not null,                                /* export date */
  773.   expuser       varchar2("M_IDEN") not null)            /* user doing export */
  774. /
  775. grant all on incfil to system
  776. /
  777. create table "_default_auditing_options_"   /* default auditing option table */
  778. ( a             varchar2(1))                              /* auditing option */
  779. /
  780. create sequence audses$                               /* auditing session id */
  781.   start with 1
  782.   increment by 1
  783.   minvalue 1
  784.   maxvalue 2E9                                     /* maxvalue fits in a ub4 */
  785.   cycle
  786.   cache 20
  787.   noorder
  788. /
  789. create table audit$                                 /* auditing option table */
  790. ( user#        number not null,                   /* user identifier number */
  791.   option#       number not null,                   /* auditing option number */
  792.   success       number,                                 /* audit on success? */
  793.   failure       number)                                 /* audit on failure? */
  794.                /* null = no audit, 1 = audit by session, 2 = audit by access */
  795. /
  796. create unique index i_audit on audit$(user#, option#)
  797.                        /* this index is more for uniqueness than performance */
  798. /
  799. create table pending_trans$        /* pending or "indoubt" transactions */
  800. ( local_tran_id      varchar2("M_LTID") not null, /* print form of kxid (local) */
  801.   global_tran_fmt integer not null,               /* global tran format code */
  802.   global_oracle_id  varchar2("M_GTID"),                      /* Oracle k2gti */
  803.   global_foreign_id raw("M_GTID"),                       /* non-Oracle k2gti */
  804.   tran_comment      varchar2("M_XCMT"),             /* commit/rollback comment */
  805.   state          varchar2(16) not null,       /* see k2.h: k2sta (tx state) */
  806.   status          varchar2(1) not null,                   /* Pending, Damage */
  807.   heuristic_dflt  varchar2(1),                  /* advice: Commit/Rollback/? */
  808.   session_vector  raw(4) not null,              /* bit map of pending sess's */
  809.   reco_vector      raw(4) not null,             /* map of sess's rdy for reco */
  810.   fail_time      date not null,                            /* time inserted */
  811.   heuristic_time  date,                        /* time of heuristic decision */
  812.   reco_time      date not null,               /* last time tried (exp.b.o.) */
  813.   top_db_user     varchar2("M_IDEN"),        /* top level DB session created */
  814.   top_os_user     varchar2("M_UNML"),              /* top level OS user name */
  815.   top_os_host      varchar2("M_HOST"),         /* top level user OS host name */
  816.   top_os_terminal varchar2("M_TERM"),            /* top level OS terminal id */
  817.   global_commit#  varchar2(16) )              /* global system commit number */
  818. /
  819. create unique index i_pending_trans1 on pending_trans$(local_tran_id)
  820.   /* this index is not for performance, but rather to ensure uniqueness */
  821. /
  822. create table pending_sessions$                  /* child of pending_trans$ */
  823. ( local_tran_id   varchar2("M_LTID") not null,                /* 1:n w/ parent */
  824.   session_id      smallint not null,
  825.   branch_id      raw("M_GBID") not null,                        /* of local */
  826.   interface      varchar2(1) not null,             /* C=commit/confirm, P=prep */
  827.   parent_dbid      varchar2("M_IDBI"),             /* null string->top level */
  828.   parent_db      varchar2("M_XDBI"),      /* global name of parent database */
  829.   db_userid      integer not null)                 /* creator of DB session */
  830. /
  831. create table pending_sub_sessions$           /* child of pending_sessions$ */
  832. ( local_tran_id   varchar2("M_LTID") not null,    /* w/session_id,1:n w/parent */
  833.   session_id      smallint not null,                             /* of local */
  834.   sub_session_id  smallint not null, /* session,sub_session is remote branch */
  835.   interface      varchar2(1) not null,         /* C=hold commit, N=no hold */
  836.   dbid          varchar2("M_IDBI") not null,            /* of remote */
  837.   link_owner      integer not null,              /* owner of dblink */
  838.   dblink      varchar2("M_XDBI") not null)
  839. /
  840. create cluster c_mlog# (master varchar2("M_IDEN"),
  841.                         mowner varchar2("M_IDEN"))
  842. /
  843. create index i_mlog# on cluster c_mlog#
  844. /
  845. create table mlog$          /* list of local master tables used by snapshots */
  846. ( mowner          varchar2("M_IDEN") not null,            /* owner of master */
  847.   master          varchar2("M_IDEN") not null,             /* name of master */
  848.   oldest          date,                                /* maximum age of log */
  849.   oscn            number,                                   /* scn of oldest */
  850.   youngest        date,                     /* most recent snaptime assigned */
  851.   yscn            number,                                 /* scn of youngest */
  852.   log             varchar2("M_IDEN") not null,                /* name of log */
  853.   trig            varchar2("M_IDEN") not null)  /* trigger on master for log */
  854. cluster c_mlog# (master, mowner)
  855. /
  856. create table slog$                     /* list of snapshots on local masters */
  857. ( mowner          varchar2("M_IDEN") not null,            /* owner of master */
  858.   master          varchar2("M_IDEN") not null,             /* name of master */
  859.   snapshot        date,                               /* identifies snapshot */
  860.   sscn            number,                                 /* scn of snapshot */
  861.   snaptime        date               not null,        /* when last refreshed */
  862.   tscn            number)                                 /* scn of snaptime */
  863. cluster c_mlog# (master, mowner)
  864. /
  865. create index i_slog1 on slog$(snaptime)
  866. /
  867. create table snap$                                /* list of local snapshots */
  868. ( sowner          varchar2("M_IDEN") not null,          /* owner of snapshot */
  869.   vname           varchar2("M_IDEN") not null,      /* name of snapshot view */
  870.   tname           varchar2("M_IDEN") not null,     /* name of snapshot table */
  871.   mview           varchar2("M_IDEN") not null, /* view snapshot is made from */
  872.   mowner          varchar2("M_IDEN"),                     /* owner of master */
  873.   master          varchar2("M_IDEN"),                      /* name of master */
  874.   mlink           varchar2("M_XDBI"),        /* database link to master site */
  875.   can_use_log     varchar2(1),                                     /* unused */
  876.   snapshot        date,       /* used by the master to identify the snapshot */
  877.   sscn            number,                                 /* scn of snapshot */
  878.   snaptime        date,             /* when this snapshot was last refreshed */
  879.   tscn            number,                                 /* scn of snaptime */
  880.   error#          number,          /* last error caused by automatic refresh */
  881.   auto_fast       varchar2(1),        /* date function for automatic refresh */
  882.   auto_fun        varchar2("M_DATF"),             /* obsolete, 7.1 and above */
  883.   auto_date       date,                           /* obsolete, 7.1 and above */
  884.   refgroup        number,                                          /* unused */
  885.   ustrg           varchar2("M_IDEN"),     /* trigger for updatable snapshots */
  886.   uslog           varchar2("M_IDEN"),         /* log for updatable snapshots */
  887.   field1          number,                                  /* for future use */
  888.   field2          varchar2("M_IDEN"),                      /* for future use */
  889.   flag            number,                     /* 0x01, can use master log    */
  890.                                               /* 0x02, snapshot is updatable */
  891.   query_txt       long)                /* query which this view instantiates */
  892. /
  893. create unique index i_snap1 on snap$(vname, sowner)
  894. /
  895. rem 
  896. rem  Job Queue
  897. rem
  898. create sequence jobseq
  899.   start with 1
  900.   increment by 1
  901.   minvalue 1
  902.   maxvalue 999999999                        /* should be less than MAXSB4VAL */
  903.   cache 20
  904.   noorder
  905.   cycle
  906. /
  907. create table job$
  908. ( job             number not null,                  /* identifier of the job */
  909.   lowner          varchar2("M_IDEN") not null,             /* logged in user */
  910.   powner          varchar2("M_IDEN") not null,                   /* security */
  911.   cowner          varchar2("M_IDEN") not null,                    /* parsing */
  912.   last_date       date,                      /* when this job last succeeded */
  913.   this_date       date,    /* when the current execute started, usually null */
  914.   next_date       date not null,             /* when to execute the job next */
  915.   total           number default 0 not null, /* total time spent on this job */
  916.   interval        varchar2("M_DATF") not null,/* function for next next_date */
  917.   failures        number,           /* number of failures since last success */
  918.   flag            number default 0 not null,     /* 0x01, this job is broken */
  919.   what            varchar2("M_VCSZ"),        /* PL/SQL text, what is the job */
  920.   nlsenv          varchar2("M_VCSZ"),                      /* nls parameters */
  921.   env             raw(32),                    /* other environment variables */
  922.   cur_ses_label   mlslabel,      /* current session label for trusted oracle */
  923.   clearance_hi    mlslabel,             /* clearance high for trusted oracle */
  924.   clearance_lo    mlslabel,              /* clearance low for trusted oracle */
  925.   charenv         varchar2("M_VCSZ"),                            /* not used */
  926.   field1          number default 0)                              /* not used */
  927. /
  928. create unique index i_job_job on job$ (job)
  929. /
  930. create index i_job_next on job$ (next_date)
  931. /
  932. rem
  933. rem  Refresh Groups
  934. rem
  935. create sequence rgroupseq
  936.   start with 1
  937.   increment by 1
  938.   minvalue 1
  939.   maxvalue 999999999                        /* should be less than MAXSB4VAL */
  940.   cache 20
  941.   noorder
  942.   cycle
  943. /
  944. create cluster c_rg#
  945. ( refgroup        number)                            /* refresh group number */
  946. /
  947. create index i_rg# on cluster c_rg#
  948. /
  949. create table rgroup$
  950. ( refgroup        number,                         /* number of refresh group */
  951.   owner           varchar2("M_IDEN") not null,     /* owner of refresh group */
  952.   name            varchar2("M_IDEN") not null,      /* name of refresh group */
  953.   flag            number default 0,        /* 0x01, destroy group when empty */
  954.                                                  /* 0x02, do not push queues */
  955.                                                /* 0x04, refresh after errors */
  956.   rollback_seg    varchar2("M_IDEN"),             /* rollback segment to use */
  957.   field1          number default 0,
  958.   job             number not null)  /* job in job$ for refreshing this group */
  959. cluster c_rg# (refgroup)
  960. /
  961. create unique index i_rgroup on rgroup$ (owner, name)
  962. /
  963. create unique index i_rgref on rgroup$ (refgroup)
  964. /
  965. create index i_rgjob on rgroup$ (job)
  966. /
  967. create table rgchild$
  968. ( owner           varchar2("M_IDEN") not null,             /* owner of child */
  969.   name            varchar2("M_IDEN") not null,              /* name of child */
  970.   type            varchar2("M_IDEN") default 'SNAPSHOT',   /* type of object */
  971.   field1          number default 0,
  972.   refgroup        number)                   /* refresh group the child is in */
  973. cluster c_rg# (refgroup)
  974. /
  975. create unique index i_rgchild on rgchild$ (owner, name, type)
  976. /
  977. rem
  978. rem  Drop User Cascade
  979. rem
  980. create table duc$
  981. ( owner           varchar2("M_IDEN") not null,            /* procedure owner */
  982.   pack            varchar2("M_IDEN") not null,          /* procedure package */
  983.   proc            varchar2("M_IDEN") not null,             /* procedure name */
  984.   field1          number default 0,
  985.   operation       number not null,                    /* 1=drop user cascade */
  986.   seq             number not null,            /* for ordering the procedures */
  987.   com             varchar2(80))       /* comment on what this routine is for */
  988. /
  989. create unique index i_duc on duc$ (owner,pack,proc,operation)
  990. /
  991. rem
  992. rem  Histograms
  993. rem
  994. create cluster hist$
  995. ( obj#            number,                                   /* object number */
  996.   col#            number)                                   /* column number */
  997.   pctfree 5 size 200
  998. /
  999. create index i_hist$ on cluster hist$
  1000. /
  1001. create table histogram$                                   /* histogram table */
  1002. ( obj#            number not null,                          /* object number */
  1003.   col#            number not null,                          /* column number */
  1004.   bucket          number not null,                          /* bucket number */
  1005.   endpoint        number not null,                  /* endpoint hashed value */
  1006.   endpointr       raw(32))                             /* endpoint raw value */
  1007. cluster hist$(obj#, col#)
  1008. /
  1009. create table dual                   /* pl/sql's standard pckg requires dual. */
  1010.   (dummy varchar2(1))    /* note, the optimizer knows sys.dual is single row */
  1011.   storage (initial 1)
  1012. /
  1013. insert into dual values('X')
  1014. /
  1015. create public synonym dual for dual
  1016. /
  1017. grant select on dual to public with grant option
  1018. /
  1019. rem Dual and this sequence are required by the parallel query option.
  1020. create sequence ora_tq_base$
  1021.   start with 1
  1022.   increment by 1
  1023.   nominvalue
  1024.   nomaxvalue
  1025.   nocache
  1026.   noorder
  1027.   nocycle
  1028. /
  1029.  
  1030. rem
  1031. rem  FAMILY "PRIVILEGE MAP"
  1032. rem  Tables for mapping privilege numbers to privilege names.
  1033. rem
  1034. rem  SYSTEM_PRIVILEGE_MAP maps a system privilege  number
  1035. rem  to the name.
  1036. rem
  1037. drop table SYSTEM_PRIVILEGE_MAP
  1038. /
  1039. create table SYSTEM_PRIVILEGE_MAP (
  1040.         PRIVILEGE       number not null,
  1041.         NAME            varchar2(40) not null)
  1042. /
  1043. comment on table SYSTEM_PRIVILEGE_MAP is
  1044. 'Description table for privilege type codes.  Maps privilege  type numbers to type names'
  1045. /
  1046. comment on column SYSTEM_PRIVILEGE_MAP.PRIVILEGE is
  1047. 'Numeric privilege type code'
  1048. /
  1049. comment on column SYSTEM_PRIVILEGE_MAP.NAME is
  1050. 'Name of the type of privilege'
  1051. /
  1052. insert into SYSTEM_PRIVILEGE_MAP values (-3, 'ALTER SYSTEM');
  1053. insert into SYSTEM_PRIVILEGE_MAP values (-4, 'AUDIT SYSTEM');
  1054. insert into SYSTEM_PRIVILEGE_MAP values (-5, 'CREATE SESSION');
  1055. insert into SYSTEM_PRIVILEGE_MAP values (-6, 'ALTER SESSION');
  1056. insert into SYSTEM_PRIVILEGE_MAP values (-7, 'RESTRICTED SESSION');
  1057. insert into SYSTEM_PRIVILEGE_MAP values (-10, 'CREATE TABLESPACE');
  1058. insert into SYSTEM_PRIVILEGE_MAP values (-11, 'ALTER TABLESPACE');
  1059. insert into SYSTEM_PRIVILEGE_MAP values (-12, 'MANAGE TABLESPACE');
  1060. insert into SYSTEM_PRIVILEGE_MAP values (-13, 'DROP TABLESPACE');
  1061. insert into SYSTEM_PRIVILEGE_MAP values (-15, 'UNLIMITED TABLESPACE');
  1062. insert into SYSTEM_PRIVILEGE_MAP values (-20, 'CREATE USER');
  1063. insert into SYSTEM_PRIVILEGE_MAP values (-21, 'BECOME USER');
  1064. insert into SYSTEM_PRIVILEGE_MAP values (-22, 'ALTER USER');
  1065. insert into SYSTEM_PRIVILEGE_MAP values (-23, 'DROP USER');
  1066. insert into SYSTEM_PRIVILEGE_MAP values (-30, 'CREATE ROLLBACK SEGMENT');
  1067. insert into SYSTEM_PRIVILEGE_MAP values (-31, 'ALTER ROLLBACK SEGMENT');
  1068. insert into SYSTEM_PRIVILEGE_MAP values (-32, 'DROP ROLLBACK SEGMENT');
  1069. insert into SYSTEM_PRIVILEGE_MAP values (-40, 'CREATE TABLE');
  1070. insert into SYSTEM_PRIVILEGE_MAP values (-41, 'CREATE ANY TABLE');
  1071. insert into SYSTEM_PRIVILEGE_MAP values (-42, 'ALTER ANY TABLE');
  1072. insert into SYSTEM_PRIVILEGE_MAP values (-43, 'BACKUP ANY TABLE');
  1073. insert into SYSTEM_PRIVILEGE_MAP values (-44, 'DROP ANY TABLE');
  1074. insert into SYSTEM_PRIVILEGE_MAP values (-45, 'LOCK ANY TABLE');
  1075. insert into SYSTEM_PRIVILEGE_MAP values (-46, 'COMMENT ANY TABLE');
  1076. insert into SYSTEM_PRIVILEGE_MAP values (-47, 'SELECT ANY TABLE');
  1077. insert into SYSTEM_PRIVILEGE_MAP values (-48, 'INSERT ANY TABLE');
  1078. insert into SYSTEM_PRIVILEGE_MAP values (-49, 'UPDATE ANY TABLE');
  1079. insert into SYSTEM_PRIVILEGE_MAP values (-50, 'DELETE ANY TABLE');
  1080. insert into SYSTEM_PRIVILEGE_MAP values (-60, 'CREATE CLUSTER');
  1081. insert into SYSTEM_PRIVILEGE_MAP values (-61, 'CREATE ANY CLUSTER');
  1082. insert into SYSTEM_PRIVILEGE_MAP values (-62, 'ALTER ANY CLUSTER');
  1083. insert into SYSTEM_PRIVILEGE_MAP values (-63, 'DROP ANY CLUSTER');
  1084. insert into SYSTEM_PRIVILEGE_MAP values (-71, 'CREATE ANY INDEX');
  1085. insert into SYSTEM_PRIVILEGE_MAP values (-72, 'ALTER ANY INDEX');
  1086. insert into SYSTEM_PRIVILEGE_MAP values (-73, 'DROP ANY INDEX');
  1087. insert into SYSTEM_PRIVILEGE_MAP values (-80, 'CREATE SYNONYM');
  1088. insert into SYSTEM_PRIVILEGE_MAP values (-81, 'CREATE ANY SYNONYM');
  1089. insert into SYSTEM_PRIVILEGE_MAP values (-82, 'DROP ANY SYNONYM');
  1090. insert into SYSTEM_PRIVILEGE_MAP values (-83, 'SYSDBA');
  1091. insert into SYSTEM_PRIVILEGE_MAP values (-84, 'SYSOPER');
  1092. insert into SYSTEM_PRIVILEGE_MAP values (-85, 'CREATE PUBLIC SYNONYM');
  1093. insert into SYSTEM_PRIVILEGE_MAP values (-86, 'DROP PUBLIC SYNONYM');
  1094. insert into SYSTEM_PRIVILEGE_MAP values (-90, 'CREATE VIEW');
  1095. insert into SYSTEM_PRIVILEGE_MAP values (-91, 'CREATE ANY VIEW');
  1096. insert into SYSTEM_PRIVILEGE_MAP values (-92, 'DROP ANY VIEW');
  1097. insert into SYSTEM_PRIVILEGE_MAP values (-105, 'CREATE SEQUENCE');
  1098. insert into SYSTEM_PRIVILEGE_MAP values (-106, 'CREATE ANY SEQUENCE');
  1099. insert into SYSTEM_PRIVILEGE_MAP values (-107, 'ALTER ANY SEQUENCE');
  1100. insert into SYSTEM_PRIVILEGE_MAP values (-108, 'DROP ANY SEQUENCE');
  1101. insert into SYSTEM_PRIVILEGE_MAP values (-109, 'SELECT ANY SEQUENCE');
  1102. insert into SYSTEM_PRIVILEGE_MAP values (-115, 'CREATE DATABASE LINK');
  1103. insert into SYSTEM_PRIVILEGE_MAP values (-120, 'CREATE PUBLIC DATABASE LINK');
  1104. insert into SYSTEM_PRIVILEGE_MAP values (-121, 'DROP PUBLIC DATABASE LINK');
  1105. insert into SYSTEM_PRIVILEGE_MAP values (-125, 'CREATE ROLE');
  1106. insert into SYSTEM_PRIVILEGE_MAP values (-126, 'DROP ANY ROLE');
  1107. insert into SYSTEM_PRIVILEGE_MAP values (-127, 'GRANT ANY ROLE');
  1108. insert into SYSTEM_PRIVILEGE_MAP values (-128, 'ALTER ANY ROLE');
  1109. insert into SYSTEM_PRIVILEGE_MAP values (-130, 'AUDIT ANY');
  1110. insert into SYSTEM_PRIVILEGE_MAP values (-135, 'ALTER DATABASE');
  1111. insert into SYSTEM_PRIVILEGE_MAP values (-138, 'FORCE TRANSACTION');
  1112. insert into SYSTEM_PRIVILEGE_MAP values (-139, 'FORCE ANY TRANSACTION');
  1113. insert into SYSTEM_PRIVILEGE_MAP values (-140, 'CREATE PROCEDURE');
  1114. insert into SYSTEM_PRIVILEGE_MAP values (-141, 'CREATE ANY PROCEDURE');
  1115. insert into SYSTEM_PRIVILEGE_MAP values (-142, 'ALTER ANY PROCEDURE');
  1116. insert into SYSTEM_PRIVILEGE_MAP values (-143, 'DROP ANY PROCEDURE');
  1117. insert into SYSTEM_PRIVILEGE_MAP values (-144, 'EXECUTE ANY PROCEDURE');
  1118. insert into SYSTEM_PRIVILEGE_MAP values (-151, 'CREATE TRIGGER');
  1119. insert into SYSTEM_PRIVILEGE_MAP values (-152, 'CREATE ANY TRIGGER');
  1120. insert into SYSTEM_PRIVILEGE_MAP values (-153, 'ALTER ANY TRIGGER');
  1121. insert into SYSTEM_PRIVILEGE_MAP values (-154, 'DROP ANY TRIGGER');
  1122. insert into SYSTEM_PRIVILEGE_MAP values (-160, 'CREATE PROFILE');
  1123. insert into SYSTEM_PRIVILEGE_MAP values (-161, 'ALTER PROFILE');
  1124. insert into SYSTEM_PRIVILEGE_MAP values (-162, 'DROP PROFILE');
  1125. insert into SYSTEM_PRIVILEGE_MAP values (-163, 'ALTER RESOURCE COST');
  1126. insert into SYSTEM_PRIVILEGE_MAP values (-165, 'ANALYZE ANY');
  1127. insert into SYSTEM_PRIVILEGE_MAP values (-167, 'GRANT ANY PRIVILEGE');
  1128. insert into SYSTEM_PRIVILEGE_MAP values (-172, 'CREATE SNAPSHOT');
  1129. insert into SYSTEM_PRIVILEGE_MAP values (-173, 'CREATE ANY SNAPSHOT');
  1130. insert into SYSTEM_PRIVILEGE_MAP values (-174, 'ALTER ANY SNAPSHOT');
  1131. insert into SYSTEM_PRIVILEGE_MAP values (-175, 'DROP ANY SNAPSHOT');
  1132. insert into SYSTEM_PRIVILEGE_MAP values (-197, 'WRITEDOWN');
  1133. insert into SYSTEM_PRIVILEGE_MAP values (-198, 'READUP');
  1134. insert into SYSTEM_PRIVILEGE_MAP values (-199, 'WRITEUP')
  1135. /
  1136. create unique index I_SYSTEM_PRIVILEGE_MAP
  1137.         on SYSTEM_PRIVILEGE_MAP (PRIVILEGE, NAME)
  1138. /
  1139. drop public synonym SYSTEM_PRIVILEGE_MAP
  1140. /
  1141. create public synonym SYSTEM_PRIVILEGE_MAP for SYSTEM_PRIVILEGE_MAP
  1142. /
  1143. grant select on SYSTEM_PRIVILEGE_MAP to public with grant option
  1144. /
  1145. rem
  1146. rem  TABLE_PRIVILEGE_MAP maps a table privilege (auditing option) number
  1147. rem  to the name.
  1148. rem
  1149. drop table TABLE_PRIVILEGE_MAP
  1150. /
  1151. create table TABLE_PRIVILEGE_MAP (
  1152.         PRIVILEGE       number not null,
  1153.         NAME            varchar2(40) not null)
  1154. /
  1155. comment on table TABLE_PRIVILEGE_MAP is
  1156. 'Description table for privilege (auditing option) type codes.  Maps privilege (auditing option) type numbers to type names'
  1157. /
  1158. comment on column TABLE_PRIVILEGE_MAP.PRIVILEGE is
  1159. 'Numeric privilege (auditing option) type code'
  1160. /
  1161. comment on column TABLE_PRIVILEGE_MAP.NAME is
  1162. 'Name of the type of privilege (auditing option)'
  1163. /
  1164. insert into TABLE_PRIVILEGE_MAP values (0, 'ALTER');
  1165. insert into TABLE_PRIVILEGE_MAP values (1, 'AUDIT');
  1166. insert into TABLE_PRIVILEGE_MAP values (2, 'COMMENT');
  1167. insert into TABLE_PRIVILEGE_MAP values (3, 'DELETE');
  1168. insert into TABLE_PRIVILEGE_MAP values (4, 'GRANT');
  1169. insert into TABLE_PRIVILEGE_MAP values (5, 'INDEX');
  1170. insert into TABLE_PRIVILEGE_MAP values (6, 'INSERT');
  1171. insert into TABLE_PRIVILEGE_MAP values (7, 'LOCK');
  1172. insert into TABLE_PRIVILEGE_MAP values (8, 'RENAME');
  1173. insert into TABLE_PRIVILEGE_MAP values (9, 'SELECT');
  1174. insert into TABLE_PRIVILEGE_MAP values (10, 'UPDATE');
  1175. insert into TABLE_PRIVILEGE_MAP values (11, 'REFERENCES');
  1176. insert into TABLE_PRIVILEGE_MAP values (12, 'EXECUTE')
  1177. /
  1178. create unique index I_TABLE_PRIVILEGE_MAP
  1179.         on TABLE_PRIVILEGE_MAP (PRIVILEGE, NAME)
  1180. /
  1181. drop public synonym TABLE_PRIVILEGE_MAP
  1182. /
  1183. create public synonym TABLE_PRIVILEGE_MAP for TABLE_PRIVILEGE_MAP
  1184. /
  1185. grant select on TABLE_PRIVILEGE_MAP to public with grant option
  1186. /
  1187. rem
  1188. rem  FAMILY "OPTION MAP"
  1189. rem    Tables for mapping auditing option numbers to auditing 
  1190. rem  the name.
  1191. rem
  1192. rem  STMT_AUDIT_OPTION_MAP maps a auditing option number to the name.
  1193. rem
  1194. drop table STMT_AUDIT_OPTION_MAP
  1195. /
  1196. create table STMT_AUDIT_OPTION_MAP (
  1197.     OPTION#            number not null,
  1198.     NAME            varchar2(40) not null)
  1199. /
  1200. comment on table STMT_AUDIT_OPTION_MAP is
  1201. 'Description table for auditing option type codes.  Maps auditing option type numbers to type names'
  1202. /
  1203. comment on column STMT_AUDIT_OPTION_MAP.OPTION# is
  1204. 'Numeric auditing option type code'
  1205. /
  1206. comment on column STMT_AUDIT_OPTION_MAP.NAME is
  1207. 'Name of the type of auditing option'
  1208. /
  1209. insert into STMT_AUDIT_OPTION_MAP values (  3, 'ALTER SYSTEM');
  1210. insert into STMT_AUDIT_OPTION_MAP values (  4, 'SYSTEM AUDIT');
  1211. insert into STMT_AUDIT_OPTION_MAP values (  5, 'CREATE SESSION');
  1212. insert into STMT_AUDIT_OPTION_MAP values (  6, 'ALTER SESSION');
  1213. insert into STMT_AUDIT_OPTION_MAP values (  7, 'RESTRICTED SESSION');
  1214. insert into STMT_AUDIT_OPTION_MAP values (  8, 'TABLE');
  1215. insert into STMT_AUDIT_OPTION_MAP values (  9, 'CLUSTER');
  1216. insert into STMT_AUDIT_OPTION_MAP values ( 10, 'CREATE TABLESPACE');
  1217. insert into STMT_AUDIT_OPTION_MAP values ( 11, 'ALTER TABLESPACE');
  1218. insert into STMT_AUDIT_OPTION_MAP values ( 12, 'MANAGE TABLESPACE');
  1219. insert into STMT_AUDIT_OPTION_MAP values ( 13, 'DROP TABLESPACE');
  1220. insert into STMT_AUDIT_OPTION_MAP values ( 14, 'TABLESPACE');
  1221. insert into STMT_AUDIT_OPTION_MAP values ( 15, 'UNLIMITED TABLESPACE');
  1222. insert into STMT_AUDIT_OPTION_MAP values ( 16, 'USER');
  1223. insert into STMT_AUDIT_OPTION_MAP values ( 17, 'ROLLBACK SEGMENT');
  1224. insert into STMT_AUDIT_OPTION_MAP values ( 19, 'INDEX');
  1225. insert into STMT_AUDIT_OPTION_MAP values ( 20, 'CREATE USER');
  1226. insert into STMT_AUDIT_OPTION_MAP values ( 21, 'BECOME USER');
  1227. insert into STMT_AUDIT_OPTION_MAP values ( 22, 'ALTER USER');
  1228. insert into STMT_AUDIT_OPTION_MAP values ( 23, 'DROP USER');
  1229. insert into STMT_AUDIT_OPTION_MAP values ( 24, 'SYNONYM');
  1230. insert into STMT_AUDIT_OPTION_MAP values ( 25, 'PUBLIC SYNONYM');
  1231. insert into STMT_AUDIT_OPTION_MAP values ( 26, 'VIEW');
  1232. insert into STMT_AUDIT_OPTION_MAP values ( 27, 'SEQUENCE');
  1233. insert into STMT_AUDIT_OPTION_MAP values ( 28, 'DATABASE LINK');
  1234. insert into STMT_AUDIT_OPTION_MAP values ( 29, 'PUBLIC DATABASE LINK');
  1235. insert into STMT_AUDIT_OPTION_MAP values ( 30, 'CREATE ROLLBACK SEGMENT');
  1236. insert into STMT_AUDIT_OPTION_MAP values ( 31, 'ALTER ROLLBACK SEGMENT');
  1237. insert into STMT_AUDIT_OPTION_MAP values ( 32, 'DROP ROLLBACK SEGMENT');
  1238. insert into STMT_AUDIT_OPTION_MAP values ( 33, 'ROLE');
  1239. insert into STMT_AUDIT_OPTION_MAP values ( 35, 'PROCEDURE');
  1240. insert into STMT_AUDIT_OPTION_MAP values ( 36, 'TRIGGER');
  1241. insert into STMT_AUDIT_OPTION_MAP values ( 37, 'PROFILE');
  1242. insert into STMT_AUDIT_OPTION_MAP values ( 40, 'CREATE TABLE');
  1243. insert into STMT_AUDIT_OPTION_MAP values ( 41, 'CREATE ANY TABLE');
  1244. insert into STMT_AUDIT_OPTION_MAP values ( 42, 'ALTER ANY TABLE');
  1245. insert into STMT_AUDIT_OPTION_MAP values ( 43, 'BACKUP ANY TABLE');
  1246. insert into STMT_AUDIT_OPTION_MAP values ( 44, 'DROP ANY TABLE');
  1247. insert into STMT_AUDIT_OPTION_MAP values ( 45, 'LOCK ANY TABLE');
  1248. insert into STMT_AUDIT_OPTION_MAP values ( 46, 'COMMENT ANY TABLE');
  1249. insert into STMT_AUDIT_OPTION_MAP values ( 47, 'SELECT ANY TABLE');
  1250. insert into STMT_AUDIT_OPTION_MAP values ( 48, 'INSERT ANY TABLE');
  1251. insert into STMT_AUDIT_OPTION_MAP values ( 49, 'UPDATE ANY TABLE');
  1252. insert into STMT_AUDIT_OPTION_MAP values ( 50, 'DELETE ANY TABLE');
  1253. insert into STMT_AUDIT_OPTION_MAP values ( 60, 'CREATE CLUSTER');
  1254. insert into STMT_AUDIT_OPTION_MAP values ( 61, 'CREATE ANY CLUSTER');
  1255. insert into STMT_AUDIT_OPTION_MAP values ( 62, 'ALTER ANY CLUSTER');
  1256. insert into STMT_AUDIT_OPTION_MAP values ( 63, 'DROP ANY CLUSTER');
  1257. insert into STMT_AUDIT_OPTION_MAP values ( 71, 'CREATE ANY INDEX');
  1258. insert into STMT_AUDIT_OPTION_MAP values ( 72, 'ALTER ANY INDEX');
  1259. insert into STMT_AUDIT_OPTION_MAP values ( 73, 'DROP ANY INDEX');
  1260. insert into STMT_AUDIT_OPTION_MAP values ( 80, 'CREATE SYNONYM');
  1261. insert into STMT_AUDIT_OPTION_MAP values ( 81, 'CREATE ANY SYNONYM');
  1262. insert into STMT_AUDIT_OPTION_MAP values ( 82, 'DROP ANY SYNONYM');
  1263. insert into STMT_AUDIT_OPTION_MAP values ( 83, 'SYSDBA');
  1264. insert into STMT_AUDIT_OPTION_MAP values ( 84, 'SYSOPER');
  1265. insert into STMT_AUDIT_OPTION_MAP values ( 85, 'CREATE PUBLIC SYNONYM');
  1266. insert into STMT_AUDIT_OPTION_MAP values ( 86, 'DROP PUBLIC SYNONYM');
  1267. insert into STMT_AUDIT_OPTION_MAP values ( 90, 'CREATE VIEW');
  1268. insert into STMT_AUDIT_OPTION_MAP values ( 91, 'CREATE ANY VIEW');
  1269. insert into STMT_AUDIT_OPTION_MAP values ( 92, 'DROP ANY VIEW');
  1270. insert into STMT_AUDIT_OPTION_MAP values (105, 'CREATE SEQUENCE');
  1271. insert into STMT_AUDIT_OPTION_MAP values (106, 'CREATE ANY SEQUENCE');
  1272. insert into STMT_AUDIT_OPTION_MAP values (107, 'ALTER ANY SEQUENCE');
  1273. insert into STMT_AUDIT_OPTION_MAP values (108, 'DROP ANY SEQUENCE');
  1274. insert into STMT_AUDIT_OPTION_MAP values (109, 'SELECT ANY SEQUENCE');
  1275. insert into STMT_AUDIT_OPTION_MAP values (111, 'GRANT SEQUENCE');
  1276. insert into STMT_AUDIT_OPTION_MAP values (115, 'CREATE DATABASE LINK');
  1277. insert into STMT_AUDIT_OPTION_MAP values (120, 'CREATE PUBLIC DATABASE LINK');
  1278. insert into STMT_AUDIT_OPTION_MAP values (121, 'DROP PUBLIC DATABASE LINK');
  1279. insert into STMT_AUDIT_OPTION_MAP values (125, 'CREATE ROLE');
  1280. insert into STMT_AUDIT_OPTION_MAP values (126, 'DROP ANY ROLE');
  1281. insert into STMT_AUDIT_OPTION_MAP values (127, 'GRANT ANY ROLE');
  1282. insert into STMT_AUDIT_OPTION_MAP values (128, 'ALTER ANY ROLE');
  1283. insert into STMT_AUDIT_OPTION_MAP values (130, 'AUDIT ANY');
  1284. insert into STMT_AUDIT_OPTION_MAP values (131, 'SYSTEM GRANT');
  1285. insert into STMT_AUDIT_OPTION_MAP values (135, 'ALTER DATABASE');
  1286. insert into STMT_AUDIT_OPTION_MAP values (138, 'FORCE TRANSACTION');
  1287. insert into STMT_AUDIT_OPTION_MAP values (139, 'FORCE ANY TRANSACTION');
  1288. insert into STMT_AUDIT_OPTION_MAP values (140, 'CREATE PROCEDURE');
  1289. insert into STMT_AUDIT_OPTION_MAP values (141, 'CREATE ANY PROCEDURE');
  1290. insert into STMT_AUDIT_OPTION_MAP values (142, 'ALTER ANY PROCEDURE');
  1291. insert into STMT_AUDIT_OPTION_MAP values (143, 'DROP ANY PROCEDURE');
  1292. insert into STMT_AUDIT_OPTION_MAP values (144, 'EXECUTE ANY PROCEDURE');
  1293. insert into STMT_AUDIT_OPTION_MAP values (146, 'EXECUTE PROCEDURE');
  1294. insert into STMT_AUDIT_OPTION_MAP values (147, 'GRANT PROCEDURE');
  1295. insert into STMT_AUDIT_OPTION_MAP values (151, 'CREATE TRIGGER');
  1296. insert into STMT_AUDIT_OPTION_MAP values (152, 'CREATE ANY TRIGGER');
  1297. insert into STMT_AUDIT_OPTION_MAP values (153, 'ALTER ANY TRIGGER');
  1298. insert into STMT_AUDIT_OPTION_MAP values (154, 'DROP ANY TRIGGER');
  1299. insert into STMT_AUDIT_OPTION_MAP values (160, 'CREATE PROFILE');
  1300. insert into STMT_AUDIT_OPTION_MAP values (161, 'ALTER PROFILE');
  1301. insert into STMT_AUDIT_OPTION_MAP values (162, 'DROP PROFILE');
  1302. insert into STMT_AUDIT_OPTION_MAP values (163, 'ALTER RESOURCE COST');
  1303. insert into STMT_AUDIT_OPTION_MAP values (165, 'ANALYZE ANY');
  1304. insert into STMT_AUDIT_OPTION_MAP values (167, 'GRANT ANY PRIVILEGE');
  1305. insert into STMT_AUDIT_OPTION_MAP values (172, 'CREATE SNAPSHOT');
  1306. insert into STMT_AUDIT_OPTION_MAP values (173, 'CREATE ANY SNAPSHOT');
  1307. insert into STMT_AUDIT_OPTION_MAP values (174, 'ALTER ANY SNAPSHOT');
  1308. insert into STMT_AUDIT_OPTION_MAP values (175, 'DROP ANY SNAPSHOT');
  1309. insert into STMT_AUDIT_OPTION_MAP values (197, 'WRITEDOWN');
  1310. insert into STMT_AUDIT_OPTION_MAP values (198, 'READUP');
  1311. insert into STMT_AUDIT_OPTION_MAP values (199, 'WRITEUP');
  1312. insert into STMT_AUDIT_OPTION_MAP values ( 77, 'NOT EXISTS');
  1313. insert into STMT_AUDIT_OPTION_MAP values ( 87, 'EXISTS');
  1314. insert into STMT_AUDIT_OPTION_MAP values ( 54, 'ALTER TABLE');
  1315. insert into STMT_AUDIT_OPTION_MAP values ( 57, 'LOCK TABLE');
  1316. insert into STMT_AUDIT_OPTION_MAP values ( 58, 'COMMENT TABLE');
  1317. insert into STMT_AUDIT_OPTION_MAP values ( 65, 'SELECT TABLE');
  1318. insert into STMT_AUDIT_OPTION_MAP values ( 66, 'INSERT TABLE');
  1319. insert into STMT_AUDIT_OPTION_MAP values ( 67, 'UPDATE TABLE');
  1320. insert into STMT_AUDIT_OPTION_MAP values ( 68, 'DELETE TABLE');
  1321. insert into STMT_AUDIT_OPTION_MAP values ( 69, 'GRANT TABLE');
  1322. insert into STMT_AUDIT_OPTION_MAP values (103, 'ALTER SEQUENCE');
  1323. insert into STMT_AUDIT_OPTION_MAP values (104, 'SELECT SEQUENCE')
  1324. /
  1325. create unique index I_STMT_AUDIT_OPTION_MAP
  1326.         on STMT_AUDIT_OPTION_MAP (OPTION#, NAME)
  1327. /
  1328. drop public synonym STMT_AUDIT_OPTION_MAP
  1329. /
  1330. create public synonym  STMT_AUDIT_OPTION_MAP for STMT_AUDIT_OPTION_MAP
  1331. /
  1332. grant select on STMT_AUDIT_OPTION_MAP to public
  1333. /
  1334. remark
  1335. remark FAMILY "RESOURCE PROFILES"
  1336. remark
  1337. create table RESOURCE_MAP (
  1338.     RESOURCE#    number not null,
  1339.     NAME        varchar2(32) not null)
  1340. /
  1341. comment on table RESOURCE_MAP is
  1342. 'Description table for resources.  Maps resource name to number'
  1343. /
  1344. comment on column RESOURCE_MAP.RESOURCE# is
  1345. 'Numeric resource code'
  1346. /
  1347. comment on column RESOURCE_MAP.NAME is
  1348. 'Name of resource'
  1349. /
  1350. insert into resource_map values ( 0, 'COMPOSITE_LIMIT' );
  1351. insert into resource_map values ( 1, 'SESSIONS_PER_USER' );
  1352. insert into resource_map values ( 2, 'CPU_PER_SESSION' );
  1353. insert into resource_map values ( 3, 'CPU_PER_CALL' );
  1354. insert into resource_map values ( 4, 'LOGICAL_READS_PER_SESSION' );
  1355. insert into resource_map values ( 5, 'LOGICAL_READS_PER_CALL' );
  1356. insert into resource_map values ( 6, 'IDLE_TIME' );
  1357. insert into resource_map values ( 7, 'CONNECT_TIME' );
  1358. insert into resource_map values ( 8, 'PRIVATE_SGA' )
  1359. /
  1360. create role exp_full_database
  1361. /
  1362. create role imp_full_database
  1363. /
  1364. create table expact$
  1365. ( owner varchar2("M_IDEN") not null,                       /* owner of table */
  1366.   name  varchar2("M_IDEN") not null,                        /* name of table */
  1367.   func_schema varchar2("M_IDEN") not null,       /* schema func is run under */
  1368.   func_package  varchar2("M_IDEN") not null,                 /* package name */
  1369.   func_proc  varchar2("M_IDEN") not null,                  /* procedure name */
  1370.   code  number not null,                            /* PRETABLE OR POSTTABLE */
  1371.   callorder number)
  1372. /
  1373.