home *** CD-ROM | disk | FTP | other *** search
/ PC World 1998 December / PCWorld_1998-12_cd.iso / software / sybase / ASA / asa60.exe / data1.cab / scripts_files / dbovws50.sql < prev    next >
Text File  |  1998-07-27  |  31KB  |  1,239 lines

  1. --  ************************************************************************
  2. --  *       Copyright (C) 1998 by Sybase Inc.  All rights                   *
  3. --  *       reserved. No part of this software may be reproduced            *
  4. --  *       in any form or by any means - graphic, electronic or            *
  5. --  *       mechanical, including photocopying, recording, taping           *
  6. --  *       or information storage and retrieval systems - except           *
  7. --  *       with the written permission of Sybase Inc.                      *
  8. --  *************************************************************************
  9. --
  10. --  WARNING: This is a program generated file. Do not edit.
  11. --
  12.  
  13. create table dbo.RowGenerator ( 
  14.     row_num    smallint not null primary key 
  15. )
  16. go
  17. GRANT INSERT on dbo.RowGenerator TO SYS
  18. go
  19. GRANT SELECT on dbo.RowGenerator TO dbo, PUBLIC
  20. go
  21. CREATE VARIABLE I INT
  22. go
  23. BEGIN
  24.     SET I = 1;
  25.     WHILE I <= 255 LOOP
  26.         INSERT INTO dbo.RowGenerator VALUES( I );
  27.         SET I = I + 1;
  28.     END LOOP;
  29. END
  30. go
  31.     
  32. CREATE view dbo.sysalternates (  
  33.         suid,           
  34.         altsuid           
  35.         ) as  
  36.         SELECT  
  37.             cast(0 as  smallint     ),  
  38.             cast(0 as  smallint     )  
  39.         FROM    SYS.DUMMY  
  40.         WHERE    dummy_col <> 0 
  41. go
  42. GRANT SELECT ON dbo.sysalternates TO dbo, PUBLIC 
  43. go
  44.     
  45. CREATE view dbo.syscolumns (id, 
  46.                               number, 
  47.                               colid, 
  48.                               status, 
  49.                               "type", 
  50.                               length, 
  51.                               offset, 
  52.                               usertype, 
  53.                               cdefault, 
  54.                               "domain", 
  55.                               "name", 
  56.                               printfmt, 
  57.                               prec, 
  58.                               scale) 
  59.     as select cast(col.table_id+100000 as  int    ), 
  60.           cast(0 as smallint), 
  61.           cast(col.column_id as  smallint     ), 
  62.            cast(if nulls='Y' then 8 else 0 endif as smallint), 
  63.           cast(sst.ss_domain_id as smallint), 
  64.           cast(col.width as smallint), 
  65.           cast(0 as smallint), 
  66.           cast( (if col.user_type is not null and col.user_type> (select "max"(sa_user_type) from SYS.SYSTYPEMAP where sa_user_type is not null) then col.user_type else sst.ss_user_type endif) as smallint), 
  67.           cast(0 as integer),  
  68.           cast(0 as integer), 
  69.           cast(col.column_name as varchar(128)), 
  70.           cast(null as varchar(255)), 
  71.           cast(col.width as smallint), 
  72.           cast(col.scale as smallint) 
  73.     from SYS.SYSCOLUMN as col,SYS.SYSTYPEMAP as map,SYS.SYSSQLSERVERTYPE as sst 
  74.     where 
  75.           (map.sa_user_type=col.user_type 
  76.            or (map.sa_user_type is null and  
  77.          (col.user_type is null or col.user_type>108)))  
  78.            
  79.        
  80.       and map.sa_domain_id=col.domain_id 
  81.       and map.ss_user_type=sst.ss_user_type 
  82.       and (nullable='N' or nullable is null) 
  83.  union all 
  84.     select cast(parm.proc_id+200000 as integer), 
  85.        cast(0 as smallint), 
  86.        cast(parm.parm_id as smallint), 
  87.        cast(0 as smallint), 
  88.        cast(sst.ss_domain_id as smallint), 
  89.        cast(parm.width as smallint), 
  90.        cast(0 as smallint), 
  91.        cast(sst.ss_user_type as smallint), 
  92.        cast(0 as integer), 
  93.        cast(0 as integer), 
  94.        cast(parm.parm_name as varchar(128)), 
  95.        cast(null as varchar(255)), 
  96.        cast(parm.width as smallint), 
  97.        cast(parm.scale as smallint) 
  98.     from SYS.SYSPROCPARM as parm,SYS.SYSTYPEMAP as map,SYS.SYSSQLSERVERTYPE as sst 
  99.     where map.sa_user_type is null 
  100.       and parm.parm_type=0 
  101.       and map.sa_domain_id=parm.domain_id 
  102.       and map.ss_user_type=sst.ss_user_type 
  103.       and (nullable='N' or nullable is null)   
  104. go
  105. GRANT SELECT ON dbo.syscolumns TO dbo, PUBLIC
  106. go
  107.     
  108.     
  109. CREATE view dbo.syscomments ( 
  110.         id,             
  111.         number,         
  112.         colid,         
  113.         texttype,         
  114.         language,         
  115.         text,         
  116.         colid2         
  117.         ) as 
  118.         SELECT 
  119.             cast(table_id+100000 as  int    ), 
  120.             cast(0 as smallint), 
  121.             cast(row_num as  smallint     ), 
  122.             cast(0 as smallint), 
  123.             cast(0 as smallint), 
  124.             cast(substr(view_def,(row_num-1)*80+1,80) as varchar(255)), 
  125.             cast(0 as  smallint     ) 
  126.         FROM    SYS.SYSTABLE, dbo.RowGenerator 
  127.         WHERE    table_type='VIEW' 
  128.         AND    row_num <= length(view_def)/80+1 
  129.         UNION ALL 
  130.         SELECT 
  131.             cast(table_id+100000 as  int    ), 
  132.             cast(0 as smallint), 
  133.             cast(row_num as smallint), 
  134.             cast(1 as smallint), 
  135.             cast(0 as smallint), 
  136.             cast(substr(remarks,(row_num-1)*80+1,80) as varchar(255)), 
  137.             cast(0 as smallint) 
  138.         FROM    SYS.SYSTABLE, dbo.RowGenerator 
  139.         WHERE    table_type='VIEW' 
  140.         AND    row_num <= length(remarks)/80+1 
  141.         UNION ALL 
  142.         SELECT 
  143.             cast(proc_id+200000 as int), 
  144.             cast(0 as smallint), 
  145.             cast(row_num as smallint), 
  146.             cast(0 as smallint), 
  147.             cast(0 as smallint), 
  148.             cast(substr(proc_defn,(row_num-1)*80+1,80) as varchar(255)), 
  149.             cast(0 as smallint) 
  150.         FROM    SYS.SYSPROCEDURE, dbo.RowGenerator 
  151.         WHERE    row_num <= length(proc_defn)/80+1 
  152.          
  153.         UNION ALL 
  154.          
  155.         SELECT 
  156.             cast(proc_id+200000 as int), 
  157.             cast(0 as smallint), 
  158.             cast(row_num as smallint), 
  159.             cast(1 as smallint), 
  160.             cast(0 as smallint), 
  161.             cast(substr(remarks,(row_num-1)*80+1,80) as varchar(255)), 
  162.             cast(0 as smallint) 
  163.         FROM    SYS.SYSPROCEDURE, dbo.RowGenerator 
  164.         WHERE    row_num <= length(remarks)/80+1 
  165.          
  166.         UNION ALL 
  167.              
  168.         SELECT 
  169.             cast(trigger_id+300000 as int), 
  170.             cast(0 as smallint), 
  171.             cast(row_num as smallint), 
  172.             cast(0 as smallint), 
  173.             cast(0 as smallint), 
  174.             cast(substr(trigger_defn,(row_num-1)*80+1,80) as varchar(255)), 
  175.             cast(0 as smallint) 
  176.         FROM    SYS.SYSTRIGGER, dbo.RowGenerator 
  177.         WHERE    row_num <= length(trigger_defn)/80+1 
  178.          
  179.         UNION ALL 
  180.              
  181.         SELECT 
  182.             cast(trigger_id+300000 as int), 
  183.             cast(0 as smallint), 
  184.             cast(row_num as smallint), 
  185.             cast(1 as smallint), 
  186.             cast(0 as smallint), 
  187.             cast(substr(remarks,(row_num-1)*80+1,80) as varchar(255)), 
  188.             cast(0 as smallint) 
  189.         FROM    SYS.SYSTRIGGER, dbo.RowGenerator 
  190.         WHERE    row_num <= length(remarks)/80+1 
  191. go
  192. GRANT SELECT ON dbo.syscomments TO dbo, PUBLIC
  193. go
  194. CREATE view dbo.sysconstraints ( 
  195.         colid,         
  196.         spare1,         
  197.         constrid,         
  198.         tableid,         
  199.         error,         
  200.         status,         
  201.         spare2         
  202.         ) as 
  203.         SELECT 
  204.             cast(0 as  smallint     ), 
  205.             cast(0 as smallint), 
  206.             cast(0 as int), 
  207.             cast(0 as int), 
  208.             cast(0 as int), 
  209.             cast(0 as int), 
  210.             cast(0 as int) 
  211.         FROM    SYS.DUMMY 
  212.         WHERE    dummy_col <> 0 
  213. go
  214. GRANT SELECT ON dbo.sysconstraints TO dbo, PUBLIC
  215. go
  216. CREATE view dbo.sysdepends ( 
  217.         id,             
  218.         number,         
  219.         depid,         
  220.         depnumber,         
  221.         status,         
  222.         selall,         
  223.         resultobj,         
  224.         readobj         
  225.         ) as 
  226.         SELECT 
  227.             cast(0 as int), 
  228.             cast(0 as smallint), 
  229.             cast(0 as int), 
  230.             cast(0 as smallint), 
  231.             cast(0 as smallint), 
  232.             cast(0 as smallint), 
  233.             cast(0 as smallint), 
  234.             cast(0 as smallint) 
  235.         FROM    SYS.DUMMY 
  236.         WHERE    dummy_col <> 0 
  237. go
  238. GRANT SELECT ON dbo.sysdepends TO dbo, PUBLIC
  239. go
  240. CREATE view dbo.sysindexes ( 
  241.         name,         
  242.         id,             
  243.         indid,         
  244.         doampg,         
  245.         ioampg,         
  246.         oampgtrips,         
  247.         status2,         
  248.         ipgtrips,         
  249.         "first",         
  250.         root,         
  251.         distribution,    
  252.         usagecnt,         
  253.         segment,         
  254.         status,         
  255.         rowpage,         
  256.         minlen,         
  257.         maxlen,         
  258.         maxirow,         
  259.         keycnt,         
  260.         keysl,         
  261.         keys2,         
  262.         soid,         
  263.         csid         
  264.         ) as 
  265.         SELECT  
  266.             cast(index_name as varchar(128)),  
  267.             cast(table_id+100000 as  int    ),  
  268.             cast(index_id as  smallint     ),  
  269.             cast(0 as int),  
  270.             cast(0 as int),  
  271.             cast(0 as int),  
  272.             cast((if "unique" = 'U' then 2 else 0 endif) as int), 
  273.             cast(0 as int),  
  274.             cast(0 as int),  
  275.             cast(0 as int),  
  276.             cast(0 as int),  
  277.             cast(0 as smallint),  
  278.             cast(0 as smallint),  
  279.             cast((if "unique" = 'N' then 1 else 1+2 endif) as smallint),  
  280.             cast(0 as smallint),  
  281.             cast(0 as smallint),  
  282.             cast(0 as smallint),  
  283.             cast(0 as smallint),  
  284.             cast(0 as smallint),  
  285.             cast(NULL as binary(255)),  
  286.             cast(NULL as binary(255)),  
  287.             cast(0 as smallint),  
  288.             cast(0 as smallint)  
  289.         FROM    SYS.SYSINDEX 
  290.          
  291.         UNION ALL 
  292.         
  293.         SELECT  
  294.             cast(table_name as char(128)),  
  295.             cast(table_id+100000 as  int    ),  
  296.             cast(0 as smallint),  
  297.             cast(0 as int),  
  298.             cast(0 as int),  
  299.             cast(0 as int),  
  300.             cast(0 as int),         
  301.             cast(0 as int),  
  302.             cast(0 as int),  
  303.             cast(0 as int),  
  304.             cast(0 as int),  
  305.             cast(0 as smallint),  
  306.             cast(0 as smallint),  
  307.             cast(0 as smallint),  
  308.             cast(0 as smallint),  
  309.             cast(0 as smallint),  
  310.             cast(0 as smallint),  
  311.             cast(0 as smallint),  
  312.             cast(0 as smallint),  
  313.             cast(NULL as binary(255)),  
  314.             cast(NULL as binary(255)),  
  315.             cast(0 as smallint),  
  316.             cast(0 as smallint)  
  317.         FROM    SYS.SYSTABLE 
  318.         UNION ALL 
  319.     
  320.         SELECT  
  321.             cast(table_name as char(128)),  
  322.             cast(t.table_id+100000 as  int    ),  
  323.             cast(20000+foreign_key_id as smallint),  
  324.             cast(0 as int),  
  325.             cast(0 as int),  
  326.             cast(0 as int),  
  327.             cast(1 as int),  
  328.             cast(0 as int),  
  329.             cast(0 as int),  
  330.             cast(0 as int),  
  331.             cast(0 as int),  
  332.             cast(0 as smallint),  
  333.             cast(0 as smallint),  
  334.             cast(0 as smallint),  
  335.             cast(0 as smallint),  
  336.             cast(0 as smallint),  
  337.             cast(0 as smallint),  
  338.             cast(0 as smallint),  
  339.             cast(0 as smallint),  
  340.             cast(NULL as binary(255)),  
  341.             cast(NULL as binary(255)),  
  342.             cast(0 as smallint),  
  343.             cast(0 as smallint)  
  344.         FROM    SYS.SYSTABLE t, SYS.SYSFOREIGNKEY fk 
  345.         WHERE   t.table_id = fk.foreign_table_id 
  346.         UNION ALL 
  347.         SELECT  
  348.             cast(table_name as char(128)),  
  349.             cast(t.table_id+100000 as  int    ),  
  350.             cast(10000 as smallint),  
  351.             cast(0 as int),  
  352.             cast(0 as int),  
  353.             cast(0 as int),  
  354.             cast(2 as int), 
  355.             cast(0 as int),  
  356.             cast(0 as int),  
  357.             cast(0 as int),  
  358.             cast(0 as int),  
  359.             cast(0 as smallint),  
  360.             cast(0 as smallint),  
  361.             cast(1+2+2048 as smallint),  
  362.             cast(0 as smallint),  
  363.             cast(0 as smallint),  
  364.             cast(0 as smallint),  
  365.             cast(0 as smallint),  
  366.             cast(0 as smallint),  
  367.             cast(NULL as binary(255)),  
  368.             cast(NULL as binary(255)),  
  369.             cast(0 as smallint),  
  370.             cast(0 as smallint)  
  371.         FROM    SYS.SYSTABLE t 
  372.         WHERE   exists (select table_id from SYS.SYSCOLUMN 
  373.                 where table_id = t.table_id 
  374.                 and   pkey = 'Y') 
  375. go
  376. GRANT SELECT ON dbo.sysindexes TO dbo, PUBLIC
  377. go
  378. CREATE view dbo.syskeys ( 
  379.         id,             
  380.         "type",         
  381.         depid,         
  382.         keycnt,         
  383.         size,         
  384.         key1,         
  385.         key2,         
  386.         key3,         
  387.         key4,         
  388.         key5,         
  389.         key6,         
  390.         key7,         
  391.         key8,         
  392.         depkey1,         
  393.         depkey2,         
  394.         depkey3,         
  395.         depkey4,         
  396.         depkey5,         
  397.         depkey6,         
  398.         depkey7,         
  399.         depkey8          
  400.         ) as 
  401.         SELECT 
  402.             cast(0 as int), 
  403.             cast(0 as smallint), 
  404.             cast(0 as int), 
  405.             cast(0 as int), 
  406.             cast(0 as int), 
  407.             cast(0 as int), 
  408.             cast(0 as int), 
  409.             cast(0 as int), 
  410.             cast(0 as int), 
  411.             cast(0 as int), 
  412.             cast(0 as int), 
  413.             cast(0 as int), 
  414.             cast(0 as int), 
  415.             cast(0 as int), 
  416.             cast(0 as int), 
  417.             cast(0 as int), 
  418.             cast(0 as int), 
  419.             cast(0 as int), 
  420.             cast(0 as int), 
  421.             cast(0 as int), 
  422.             cast(0 as int) 
  423.         FROM    SYS.DUMMY 
  424.         WHERE    dummy_col <> 0 
  425. go
  426. GRANT SELECT ON dbo.syskeys TO dbo, PUBLIC
  427. go
  428. CREATE view dbo.syslogs ( 
  429.         xactid,         
  430.         op             
  431.         ) as 
  432.         SELECT 
  433.             cast(NULL as binary(6)), 
  434.             cast(0 as smallint) 
  435.         FROM    SYS.DUMMY 
  436.         WHERE    dummy_col <> 0 
  437. go
  438. GRANT SELECT ON dbo.syslogs TO dbo, PUBLIC
  439. go
  440. CREATE view dbo.sysobjects ( 
  441.         name,         
  442.         id,             
  443.         uid,         
  444.         type,         
  445.                 
  446.                 
  447.                 
  448.                 
  449.                 
  450.                 
  451.                 
  452.                 
  453.                 
  454.         userstat,         
  455.         sysstat,         
  456.         indexdel,         
  457.         schemacnt,         
  458.         sysstat2,         
  459.         crdate,         
  460.         expdate,         
  461.         deltrig,         
  462.         instrig,         
  463.         updtrig,         
  464.         seltrig,         
  465.         ckfirst,         
  466.         cache,         
  467.         audflags,         
  468.         objspare         
  469.         ) as 
  470.         SELECT 
  471.             cast(table_name as varchar(128)), 
  472.             cast(table_id+100000 as  int    ), 
  473.             cast(creator as  smallint     ), 
  474.             cast(if table_type='VIEW' then 'V' 
  475.                  else if creator=0 then 'S' 
  476.                  else 'U' endif endif as char(2)),     
  477.             cast(0 as smallint), 
  478.             cast(0 as smallint), 
  479.             cast(0 as smallint), 
  480.             cast(0 as smallint), 
  481.             cast(0 as smallint), 
  482.             cast(NULL as date), 
  483.             cast(NULL as date), 
  484.             cast(0 as int), 
  485.             cast(0 as int), 
  486.             cast(0 as int), 
  487.             cast(0 as int), 
  488.             cast(0 as int), 
  489.             cast(0 as smallint), 
  490.             cast(0 as int), 
  491.             cast(0 as int) 
  492.         FROM    SYS.SYSTABLE 
  493.         UNION ALL 
  494.         SELECT 
  495.             cast(proc_name as char(128)), 
  496.             cast(proc_id+200000 as int), 
  497.             cast(creator as  smallint     ), 
  498.             cast('P' as char(2)),     
  499.             cast(0 as smallint), 
  500.             cast(0 as smallint), 
  501.             cast(0 as smallint), 
  502.             cast(0 as smallint), 
  503.             cast(0 as smallint), 
  504.             cast(NULL as date), 
  505.             cast(NULL as date), 
  506.             cast(0 as int), 
  507.             cast(0 as int), 
  508.             cast(0 as int), 
  509.             cast(0 as int), 
  510.             cast(0 as int), 
  511.             cast(0 as smallint), 
  512.             cast(0 as int), 
  513.             cast(0 as int) 
  514.         FROM    SYS.SYSPROCEDURE 
  515.         UNION ALL 
  516.         SELECT 
  517.             cast(trigger_name as char(128)), 
  518.             cast(trigger_id+300000 as int), 
  519.             cast((select creator from SYS.SYSTABLE 
  520.                   where table_id=SYS.SYSTRIGGER.table_id) 
  521.                 as  smallint     ), 
  522.             cast('TR' as char(2)),     
  523.             cast(0 as smallint), 
  524.             cast(0 as smallint), 
  525.             cast(0 as smallint), 
  526.             cast(0 as smallint), 
  527.             cast(0 as smallint), 
  528.             cast(NULL as date), 
  529.             cast(NULL as date), 
  530.             cast(0 as int), 
  531.             cast(0 as int), 
  532.             cast(0 as int), 
  533.             cast(0 as int), 
  534.             cast(0 as int), 
  535.             cast(0 as smallint), 
  536.             cast(0 as int), 
  537.             cast(0 as int) 
  538.         FROM    SYS.SYSTRIGGER 
  539. go
  540. GRANT SELECT ON dbo.sysobjects TO dbo, PUBLIC
  541. go
  542.     
  543.     
  544.     
  545. CREATE view dbo.sysprocedures ( 
  546.         type,         
  547.         id,             
  548.         sequence,         
  549.         status,         
  550.         number         
  551.         ) as 
  552.         SELECT 
  553.             cast(0 as smallint), 
  554.             cast(0 as int), 
  555.             cast(0 as smallint), 
  556.             cast(0 as smallint), 
  557.             cast(0 as smallint) 
  558.         FROM    SYS.DUMMY 
  559.         WHERE    dummy_col <> 0 
  560. go
  561. GRANT SELECT ON dbo.sysprocedures TO dbo, PUBLIC
  562. go
  563. CREATE view dbo.sysprotects ( 
  564.         id,             
  565.         uid,         
  566.         action,         
  567.         protecttype,     
  568.         columns,         
  569.         grantor         
  570.         ) as 
  571.         SELECT 
  572.             cast(0 as int), 
  573.             cast(0 as  smallint     ), 
  574.             cast(0 as smallint), 
  575.             cast(0 as smallint), 
  576.             cast(NULL as binary(32)), 
  577.             cast(0 as  smallint     ) 
  578.         FROM    SYS.DUMMY 
  579.         WHERE    dummy_col <> 0 
  580. go
  581. GRANT SELECT ON dbo.sysprotects TO dbo, PUBLIC
  582. go
  583. CREATE view dbo.sysreferences ( 
  584.         indexid,         
  585.         constrid,         
  586.         tableid,         
  587.         reftabid,         
  588.         keycnt,         
  589.         status,         
  590.         frgndbid,         
  591.         pmrydbid,         
  592.         spare2,         
  593.         fokey1,         
  594.         fokey2,         
  595.         fokey3,         
  596.         fokey4,         
  597.         fokey5,         
  598.         fokey6,         
  599.         fokey7,         
  600.         fokey8,         
  601.         fokey9,         
  602.         fokey10,         
  603.         fokey11,         
  604.         fokey12,         
  605.         fokey13,         
  606.         fokey14,         
  607.         fokey15,         
  608.         fokey16,         
  609.         refkey1,         
  610.         refkey2,         
  611.         refkey3,         
  612.         refkey4,         
  613.         refkey5,         
  614.         refkey6,         
  615.         refkey7,         
  616.         refkey8,         
  617.         refkey9,         
  618.         refkey10,         
  619.         refkey11,         
  620.         refkey12,         
  621.         refkey13,         
  622.         refkey14,         
  623.         refkey15,         
  624.         refkey16,         
  625.         frgndbname,         
  626.         pmrydbname         
  627.         ) as 
  628.         SELECT 
  629.             cast(0 as  smallint     ), 
  630.             cast(0 as int), 
  631.             cast(0 as int), 
  632.             cast(0 as int), 
  633.             cast(0 as smallint), 
  634.             cast(0 as smallint), 
  635.             cast(0 as smallint), 
  636.             cast(0 as smallint), 
  637.             cast(0 as int), 
  638.             cast(0 as smallint), 
  639.             cast(0 as smallint), 
  640.             cast(0 as smallint), 
  641.             cast(0 as smallint), 
  642.             cast(0 as smallint), 
  643.             cast(0 as smallint), 
  644.             cast(0 as smallint), 
  645.             cast(0 as smallint), 
  646.             cast(0 as smallint), 
  647.             cast(0 as smallint), 
  648.             cast(0 as smallint), 
  649.             cast(0 as smallint), 
  650.             cast(0 as smallint), 
  651.             cast(0 as smallint), 
  652.             cast(0 as smallint), 
  653.             cast(0 as smallint), 
  654.             cast(0 as smallint), 
  655.             cast(0 as smallint), 
  656.             cast(0 as smallint), 
  657.             cast(0 as smallint), 
  658.             cast(0 as smallint), 
  659.             cast(0 as smallint), 
  660.             cast(0 as smallint), 
  661.             cast(0 as smallint), 
  662.             cast(0 as smallint), 
  663.             cast(0 as smallint), 
  664.             cast(0 as smallint), 
  665.             cast(0 as smallint), 
  666.             cast(0 as smallint), 
  667.             cast(0 as smallint), 
  668.             cast(0 as smallint), 
  669.             cast(0 as smallint), 
  670.             cast(NULL as varchar(30)), 
  671.             cast(NULL as varchar(30)) 
  672.         FROM    SYS.DUMMY 
  673.         WHERE    dummy_col <> 0 
  674. go
  675. GRANT SELECT ON dbo.sysreferences TO dbo, PUBLIC
  676. go
  677. CREATE view dbo.sysroles ( 
  678.         id,             
  679.         lrid,         
  680.         type,         
  681.         status         
  682.         ) as 
  683.         SELECT 
  684.             cast(0 as smallint), 
  685.             cast(0 as smallint), 
  686.             cast(0 as smallint), 
  687.             cast(0 as smallint) 
  688.         FROM    SYS.DUMMY 
  689.         WHERE    dummy_col <> 0 
  690. go
  691. GRANT SELECT ON dbo.sysroles TO dbo, PUBLIC
  692. go
  693. CREATE view dbo.syssegments ( 
  694.         segment,         
  695.         name,         
  696.         status         
  697.         ) as 
  698.         SELECT 
  699.             cast(0 as smallint), 
  700.             cast(NULL as varchar(128)), 
  701.             cast(0 as int) 
  702.         FROM    SYS.DUMMY 
  703.         WHERE    dummy_col <> 0 
  704. go
  705. GRANT SELECT ON dbo.syssegments TO dbo, PUBLIC
  706. go
  707. CREATE view dbo.systhresholds ( 
  708.         segment,         
  709.         free_space,         
  710.         status,         
  711.         proc_name,         
  712.         suid,         
  713.         currauth         
  714.         ) as 
  715.         SELECT 
  716.             cast(0 as smallint), 
  717.             cast(0 as int), 
  718.             cast(0 as smallint), 
  719.             cast(NULL as varchar(255)), 
  720.             cast(0 as  smallint     ), 
  721.             cast(NULL as binary(255)) 
  722.         FROM    SYS.DUMMY 
  723.         WHERE    dummy_col <> 0 
  724. go
  725. GRANT SELECT ON dbo.systhresholds TO dbo, PUBLIC
  726. go
  727. CREATE view dbo.systypes(uid, 
  728.                             usertype, 
  729.                             "variable", 
  730.                             allowsnulls, 
  731.                             "type", 
  732.                             length, 
  733.                             tdefault, 
  734.                             "domain", 
  735.                             "name", 
  736.                             printfmt, 
  737.                             prec, 
  738.                             scale, 
  739.                             ident, 
  740.                             hierarchy) 
  741.     as select cast(0 as  smallint     ), 
  742.           cast(sst.ss_user_type as smallint), 
  743.           cast(0 as smallint), 
  744.           cast(1 as smallint), 
  745.           cast(ss_domain_id as smallint), 
  746.           cast(0 as smallint), 
  747.           cast(0 as integer), 
  748.           cast(0 as integer), 
  749.           cast(sst.ss_type_name as varchar(128)), 
  750.           cast(null as varchar(255)), 
  751.           cast("precision" as smallint), 
  752.           cast(null as smallint), 
  753.           cast(0 as smallint), 
  754.           cast(0 as smallint) 
  755.     from SYS.SYSDOMAIN,SYS.SYSSQLSERVERTYPE as sst 
  756.     where SYSDOMAIN.domain_id=primary_sa_domain_id 
  757.       and primary_sa_user_type is null 
  758.  union all 
  759.     select cast(creator as  smallint     ), 
  760.        cast(ss_user_type as smallint), 
  761.        cast(0 as smallint), 
  762.        cast((if nulls='Y' then 1 else 0 endif) as smallint), 
  763.        cast(ss_domain_id as smallint), 
  764.        cast(width as smallint), 
  765.        cast(0 as integer), 
  766.        cast(0 as integer), 
  767.        cast(sst.ss_type_name as varchar(128)), 
  768.        cast(null as varchar(255)), 
  769.        cast("precision" as smallint), 
  770.        cast(scale as smallint), 
  771.        cast((if isnull("default",'')='autoincrement' then 1 else 0 endif) as smallint), 
  772.        cast(0 as smallint) 
  773.     from SYS.SYSUSERTYPE as t,SYS.SYSDOMAIN as d,SYS.SYSSQLSERVERTYPE as sst 
  774.     where t.domain_id=d.domain_id 
  775.       and sst.primary_sa_domain_id=t.domain_id 
  776.       and sst.primary_sa_user_type=t.type_id 
  777.  union all 
  778.     select cast(creator as  smallint     ), 
  779.        cast(t.type_id as smallint), 
  780.        cast(0 as smallint), 
  781.        cast((if nulls='Y' then 1 else 0 endif) as smallint), 
  782.        cast(ss_domain_id as smallint), 
  783.        cast(width as smallint), 
  784.        cast(0 as integer), 
  785.        cast(0 as integer), 
  786.        cast(t.type_name as varchar(128)), 
  787.        cast(null as varchar(255)), 
  788.        cast("precision" as smallint), 
  789.        cast(scale as smallint), 
  790.        cast((if isnull("default",'')='autoincrement' then 1 else 0 endif) as smallint), 
  791.        cast(0 as smallint) 
  792.     from SYS.SYSUSERTYPE as t,SYS.SYSDOMAIN as d,SYS.SYSSQLSERVERTYPE as sst, SYS.SYSTYPEMAP as tm 
  793.     where t.domain_id=d.domain_id 
  794.       and tm.sa_domain_id=t.domain_id 
  795.       and tm.sa_user_type is null 
  796.       and t.type_id > (select "max"(sa_user_type) from SYS.SYSTYPEMAP where sa_user_type is not null) 
  797.       and sst.ss_user_type = tm.ss_user_type 
  798.       and (nullable='N' or nullable is null) 
  799. go
  800. GRANT SELECT ON dbo.systypes TO dbo, PUBLIC
  801. go
  802. CREATE view dbo.sysusers ( 
  803.         suid,         
  804.         uid,         
  805.         gid,         
  806.         name,         
  807.         environ         
  808.         ) as 
  809.         SELECT 
  810.             cast(user_id as  smallint     ), 
  811.             cast(user_id as  smallint     ), 
  812.             cast(0 as  smallint     ), 
  813.             cast(user_name as varchar(128)), 
  814.             cast(NULL as varchar(255)) 
  815.         FROM    SYS.SYSUSERPERM 
  816. go
  817. GRANT SELECT ON dbo.sysusers TO dbo, PUBLIC
  818. go
  819.     
  820. CREATE view dbo.syscharsets ( 
  821.         "type",         
  822.         id,             
  823.         csid,         
  824.         status,         
  825.         name,         
  826.         description,     
  827.         definition         
  828.         ) as 
  829.         SELECT     
  830.             cast(0 as smallint), 
  831.             cast(0 as smallint), 
  832.             cast(0 as smallint), 
  833.             cast(0 as smallint), 
  834.             cast(NULL as varchar(30)), 
  835.             cast(NULL as varchar(255)), 
  836.             cast(NULL as binary(10)) 
  837.         FROM    SYS.DUMMY 
  838.         WHERE    dummy_col <> 0 
  839. go
  840. GRANT SELECT ON dbo.syscharsets TO dbo, PUBLIC
  841. go
  842. CREATE view dbo.sysconfigures ( 
  843.         config,         
  844.         Value,         
  845.         "comment",         
  846.         status         
  847.         ) as 
  848.         SELECT 
  849.             cast(0 as smallint), 
  850.             cast(0 as int), 
  851.             cast(NULL as varchar(255)), 
  852.             cast(0 as smallint) 
  853.         FROM    SYS.DUMMY 
  854.         WHERE    dummy_col <> 0 
  855. go
  856. GRANT SELECT ON dbo.sysconfigures TO dbo, PUBLIC
  857. go
  858.     
  859. CREATE view dbo.syscurconfigs ( 
  860.         config,         
  861.         Value,         
  862.         "comment",         
  863.         status         
  864.         ) as 
  865.         SELECT 
  866.             cast(0 as smallint), 
  867.             cast(0 as int), 
  868.             cast(NULL as varchar(255)), 
  869.             cast(0 as smallint) 
  870.         FROM    SYS.DUMMY 
  871.         WHERE    dummy_col <> 0 
  872. go
  873. GRANT SELECT ON dbo.syscurconfigs TO dbo, PUBLIC
  874. go
  875.     
  876. CREATE view dbo.sysdatabases ( 
  877.         "name",         
  878.         dbid,         
  879.         suid,         
  880.         status,         
  881.         version,         
  882.         logptr,         
  883.         crdate,         
  884.         dumptrdate,         
  885.         status2,         
  886.         audflags,         
  887.         deftabaud,         
  888.         defvwaud,         
  889.         defpraud         
  890.         ) as 
  891.         SELECT 
  892.             cast('*' as varchar(128)), 
  893.             cast(0 as smallint), 
  894.             cast(0 as  smallint     ), 
  895.             cast(0 as smallint), 
  896.             cast(0 as smallint), 
  897.             cast(0 as int), 
  898.             cast(NULL as date), 
  899.             cast(NULL as date), 
  900.             cast(0 as int), 
  901.             cast(0 as int), 
  902.             cast(0 as int), 
  903.             cast(0 as int), 
  904.             cast(0 as int) 
  905.         FROM    SYS.DUMMY 
  906.         WHERE    dummy_col <> 0 
  907. go
  908. GRANT SELECT ON dbo.sysdatabases TO dbo, PUBLIC
  909. go
  910. CREATE view dbo.sysdevices ( 
  911.         low,         
  912.         high,         
  913.         status,         
  914.         cntrltype,         
  915.         name,         
  916.         phyname,         
  917.         mirrorname         
  918.         ) as 
  919.         SELECT 
  920.             cast(0 as int), 
  921.             cast(0 as int), 
  922.             cast(0 as smallint), 
  923.             cast(0 as smallint), 
  924.             cast(NULL as varchar(128)), 
  925.             cast(NULL as varchar(127)), 
  926.             cast(NULL as varchar(127)) 
  927.         FROM    SYS.DUMMY 
  928.         WHERE    dummy_col <> 0 
  929. go
  930. GRANT SELECT ON dbo.sysdevices TO dbo, PUBLIC
  931. go
  932.     
  933. CREATE view dbo.sysengines ( 
  934.         engine,         
  935.         osprocid,         
  936.         osprocname,         
  937.         status,         
  938.         affinitied,         
  939.         cur_kpid,         
  940.         last_kpid,         
  941.         idle_1,         
  942.         idle_2,         
  943.         idle_3,         
  944.         idle_4,         
  945.         starttime         
  946.         ) as 
  947.         SELECT 
  948.             cast(0 as smallint), 
  949.             cast(0 as int), 
  950.             cast(NULL as char(20)), 
  951.             cast(NULL as char(20)), 
  952.             cast(0 as int), 
  953.             cast(0 as int), 
  954.             cast(0 as int), 
  955.             cast(0 as smallint), 
  956.             cast(0 as smallint), 
  957.             cast(0 as smallint), 
  958.             cast(0 as smallint), 
  959.             cast(NULL as date) 
  960.         FROM    SYS.DUMMY 
  961.         WHERE    dummy_col <> 0 
  962. go
  963. GRANT SELECT ON dbo.sysengines TO dbo, PUBLIC
  964. go
  965. CREATE view dbo.syslanguages ( 
  966.         langid,         
  967.         dateformat,         
  968.         datefirst,         
  969.         upgrade,         
  970.         name,         
  971.         alias,         
  972.         months,         
  973.         shortmonths,     
  974.         days         
  975.         ) as 
  976.         SELECT 
  977.             cast(0 as smallint), 
  978.             cast(NULL as char(3)), 
  979.             cast(0 as smallint), 
  980.             cast(0 as int), 
  981.             cast(NULL as varchar(30)), 
  982.             cast(NULL as varchar(30)), 
  983.             cast(NULL as varchar(251)), 
  984.             cast(NULL as varchar(119)), 
  985.             cast(NULL as varchar(216)) 
  986.         FROM    SYS.DUMMY 
  987.         WHERE    dummy_col <> 0 
  988. go
  989. GRANT SELECT ON dbo.syslanguages TO dbo, PUBLIC
  990. go
  991. CREATE view dbo.syslocks ( 
  992.         id,             
  993.         dbid,         
  994.         page,         
  995.         type,         
  996.         spid,         
  997.         class         
  998.         ) as 
  999.         SELECT 
  1000.             cast(0 as int), 
  1001.             cast(0 as smallint), 
  1002.             cast(0 as int), 
  1003.             cast(0 as smallint), 
  1004.             cast(0 as smallint), 
  1005.             cast(NULL as char(3)) 
  1006.         FROM    SYS.DUMMY 
  1007.         WHERE    dummy_col <> 0 
  1008. go
  1009. GRANT SELECT ON dbo.syslocks TO dbo, PUBLIC
  1010. go
  1011. CREATE view dbo.sysloginroles ( 
  1012.         suid,         
  1013.         srid,         
  1014.         status         
  1015.         ) as 
  1016.         SELECT 
  1017.             cast(0 as  smallint     ), 
  1018.             cast(0 as smallint), 
  1019.             cast(0 as smallint) 
  1020.         FROM    SYS.DUMMY 
  1021.         WHERE    dummy_col <> 0 
  1022. go
  1023. GRANT SELECT ON dbo.sysloginroles TO dbo, PUBLIC
  1024. go
  1025. CREATE view dbo.syslogins ( 
  1026.         suid,         
  1027.         status,         
  1028.         accdate,         
  1029.         totcpu,         
  1030.         totio,         
  1031.         spacelimit,         
  1032.         timelimit,         
  1033.         resultlimit,     
  1034.         dbname,         
  1035.         name,         
  1036.         password,         
  1037.         language,         
  1038.         pwdate,         
  1039.         audflags,         
  1040.         fullname         
  1041.         ) as 
  1042.         SELECT 
  1043.             cast(user_id as  smallint     ), 
  1044.             cast(0 as smallint),  
  1045.             cast(NULL as date), 
  1046.             cast(0 as int), 
  1047.             cast(0 as int), 
  1048.             cast(0 as int), 
  1049.             cast(0 as int), 
  1050.             cast(0 as int), 
  1051.             cast(NULL as varchar(128)), 
  1052.             cast(user_name as varchar(128)), 
  1053.             cast(NULL as binary(128)), 
  1054.             cast(NULL as varchar(30)), 
  1055.             cast(NULL as date), 
  1056.             cast(0 as int), 
  1057.             cast(user_name as varchar(30)) 
  1058.         FROM SYS.SYSUSERPERM 
  1059. go
  1060. GRANT SELECT ON dbo.syslogins TO dbo, PUBLIC
  1061. go
  1062.     
  1063.     
  1064. CREATE view dbo.sysmessages ( 
  1065.         error,         
  1066.         severity,         
  1067.         dlevel,         
  1068.         description,     
  1069.         langid,         
  1070.         "sqlstate"         
  1071.         ) as 
  1072.         SELECT 
  1073.             cast(0 as int), 
  1074.             cast(0 as smallint), 
  1075.             cast(0 as smallint), 
  1076.             cast(NULL as varchar(255)), 
  1077.             cast(0 as smallint), 
  1078.             cast(NULL as varchar(5)) 
  1079.         FROM    SYS.DUMMY 
  1080.         WHERE    dummy_col <> 0 
  1081. go
  1082. GRANT SELECT ON dbo.sysmessages TO dbo, PUBLIC
  1083. go
  1084.     
  1085. CREATE view dbo.sysprocesses ( 
  1086.         spid,         
  1087.         kpid,         
  1088.         enginenum,         
  1089.         status,         
  1090.         suid,         
  1091.         hostname,         
  1092.         program_name,    
  1093.         hostprocess,     
  1094.         cmd,         
  1095.         cpu,         
  1096.         physical_io,     
  1097.         memusage,         
  1098.         blocked,         
  1099.         dbid,         
  1100.         uid,         
  1101.         gid,         
  1102.         tran_name,         
  1103.         time_blocked,    
  1104.         network_pktsz    
  1105.         ) as 
  1106.         SELECT 
  1107.             cast(0 as smallint), 
  1108.             cast(0 as int), 
  1109.             cast(0 as int), 
  1110.             cast(NULL as char(12)), 
  1111.             cast(0 as  smallint     ), 
  1112.             cast(NULL as char(10)), 
  1113.             cast(NULL as char(16)), 
  1114.             cast(NULL as char(8)), 
  1115.             cast(NULL as char(16)), 
  1116.             cast(0 as int), 
  1117.             cast(0 as int), 
  1118.             cast(0 as int), 
  1119.             cast(0 as smallint), 
  1120.             cast(0 as smallint), 
  1121.             cast(0 as  smallint     ), 
  1122.             cast(0 as  smallint     ), 
  1123.             cast(NULL as varchar(64)), 
  1124.             cast(0 as int), 
  1125.             cast(0 as int) 
  1126.         FROM    SYS.DUMMY 
  1127.         WHERE    dummy_col <> 0 
  1128. go
  1129. GRANT SELECT ON dbo.sysprocesses TO dbo, PUBLIC
  1130. go
  1131. CREATE view dbo.sysremotelogins ( 
  1132.         remoteserverid,  
  1133.         remoteusername,  
  1134.         suid,         
  1135.         status         
  1136.         ) as 
  1137.         SELECT 
  1138.             cast(0 as smallint), 
  1139.             cast(NULL as varchar(30)), 
  1140.             cast(0 as  smallint     ), 
  1141.             cast(0 as smallint) 
  1142.         FROM    SYS.DUMMY 
  1143.         WHERE    dummy_col <> 0 
  1144. go
  1145. GRANT SELECT ON dbo.sysremotelogins TO dbo, PUBLIC
  1146. go
  1147. CREATE view dbo.syssrvroles ( 
  1148.         srid,         
  1149.         name         
  1150.         ) as 
  1151.         SELECT 
  1152.             cast(0 as smallint), 
  1153.             cast(NULL as varchar(10)) 
  1154.         FROM    SYS.DUMMY 
  1155.         WHERE    dummy_col <> 0 
  1156. go
  1157. GRANT SELECT ON dbo.syssrvroles TO dbo, PUBLIC
  1158. go
  1159.     
  1160. CREATE view dbo.sysservers ( 
  1161.         srvid,         
  1162.         srvstatus,         
  1163.         srvname,         
  1164.         srvnetname         
  1165.         ) as 
  1166.         SELECT 
  1167.             cast(0 as smallint), 
  1168.             cast(0 as smallint), 
  1169.             cast(NULL as varchar(30)), 
  1170.             cast(NULL as varchar(32)) 
  1171.         FROM    SYS.DUMMY 
  1172.         WHERE    dummy_col <> 0 
  1173. go
  1174. GRANT SELECT ON dbo.sysservers TO dbo, PUBLIC
  1175. go
  1176. CREATE view dbo.sysusages ( 
  1177.         dbid,         
  1178.         segmap,         
  1179.         lstart,         
  1180.         size,         
  1181.         vstart,         
  1182.         pad,         
  1183.         unreservedpgs    
  1184.         ) as 
  1185.         SELECT 
  1186.             cast(0 as smallint), 
  1187.             cast(0 as int), 
  1188.             cast(0 as int), 
  1189.             cast(0 as int), 
  1190.             cast(0 as int), 
  1191.             cast(0 as smallint), 
  1192.             cast(0 as int) 
  1193.         FROM    SYS.DUMMY 
  1194.         WHERE    dummy_col <> 0 
  1195. go
  1196. GRANT SELECT ON dbo.sysusages TO dbo, PUBLIC
  1197. go
  1198.     
  1199. CREATE view dbo.sysaudits ( 
  1200.         event,         
  1201.         eventmod,         
  1202.         spid,         
  1203.         eventtime,         
  1204.         sequence,         
  1205.         suid,         
  1206.         dbid,         
  1207.         objid,         
  1208.         xactid,         
  1209.         loginname,         
  1210.         dbname,         
  1211.         objname,         
  1212.         objowner,         
  1213.         extrainfo         
  1214.         ) as 
  1215.         SELECT    0, 0, 0, NULL, 0, 0, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL 
  1216.         FROM    SYS.DUMMY 
  1217.         WHERE    dummy_col <> 0 
  1218. go
  1219. GRANT SELECT ON dbo.sysaudits TO dbo, PUBLIC
  1220. go
  1221. CREATE view dbo.sysauditoptions ( 
  1222.         optn,         
  1223.         Value,         
  1224.         "min",         
  1225.         "max",         
  1226.         "name",         
  1227.         svalue,         
  1228.         "comment"         
  1229.         ) as 
  1230.         SELECT    0, 0, 0, 0, NULL, NULL, NULL 
  1231.         FROM    SYS.DUMMY 
  1232.         WHERE    dummy_col <> 0 
  1233. go
  1234. GRANT SELECT ON dbo.sysauditoptions TO dbo, PUBLIC
  1235. go
  1236.     
  1237. commit work
  1238. go
  1239.