• DB2创建视图并授权给其他用户


    创建视图并授权给其他用户


    可以在操作系统界面、或者DB2交互界面下进行数据库操作

    查看数据库节点
    [db2inst1@ELONEHR-DB ~]$ db2 list db directory

    System Database Directory

    Number of entries in the directory = 1

    Database 1 entry:

    Database alias = ELONEHR
    Database name = ELONEHR
    Local database directory = /hehrdta
    Database release level = d.00
    Comment =
    Directory entry type = Indirect
    Catalog database partition number = 0
    Alternate server hostname =
    Alternate server port number =

    [db2inst1@ELONEHR-DB ~]$ db2
    (c) Copyright IBM Corporation 1993,2007
    Command Line Processor for DB2 Client 9.7.7

    You can issue database manager commands and SQL statements from the command
    prompt. For example:
    db2 => connect to sample
    db2 => bind sample.bnd

    For general help, type: ?.
    For command help, type: ? command, where command can be
    the first few keywords of a database manager command. For example:
    ? CATALOG DATABASE for help on the CATALOG DATABASE command
    ? CATALOG for help on all of the CATALOG commands.

    To exit db2 interactive mode, type QUIT at the command prompt. Outside
    interactive mode, all commands must be prefixed with 'db2'.
    To list the current command option settings, type LIST COMMAND OPTIONS.

    For more detailed help, refer to the Online Reference Manual.


    db2 => connect to ELONEHR

    Database Connection Information

    Database server = DB2/LINUXX8664 9.7.7
    SQL authorization ID = DB2INST1
    Local database alias = ELONEHR
    数据库有哪些schema
    db2 => select name from sysibm.sysschemata

    NAME
    ---------------------------------------------------------
    DB2INST1
    EHRREAD
    NULLID
    ORA
    SQLJ
    SYSCAT
    SYSFUN
    SYSIBM
    SYSIBMADM
    SYSIBMINTERNAL
    SYSIBMTS
    SYSPROC
    SYSPUBLIC
    SYSSTAT
    SYSTOOLS
    ELONEHR

    16 record(s) selected.
    创建视图
    db2 =>create view ELONEHR.V_TB_INF_EMPLOYEE_PART as select * from ELONEHR.TB_INF_EMPLOYEE_PART

    查询视图
    db2 =>select tabschema||tabname from syscat.tables where TYPE = 'V' and tabname='V_TB_INF_EMPLOYEE_PART'

    将ELONEHR的视图V_TB_INF_EMPLOYEE_PART赋权给EHRREAD
    db2 => GRANT SELECT ON ELONEHR.V_TB_INF_EMPLOYEE_PART TO USER EHRREAD
    DB20000I The SQL command completed successfully.

    查询数据库表结构
    db2 =>describe table tbname
    db2 => describe table syscat.tabauth

    查看数据库用户权限
    db2 => select TABSCHEMA,TABNAME,SELECTAUTH from syscat.tabauth where GRANTEE='EHRREAD' and TABNAME='V_TB_INF_EMPLOYEE_PART'


    特权信息存储在七个系统编目视图中:

    SYSCAT.DBAUTH 数据库特权
    SYSCAT.COLAUTH 表和视图列特权
    SYSCAT.INDEXAUTH 索引特权
    SYSCAT.PACKAGEAUTH 包特权
    SYSCAT.SCHEMAAUTH 模式特权
    SYSCAT.TABAUTH 表和视图特权
    SYSCAT.TBSPACEAUTH 表空间特权

  • 相关阅读:
    Egg 中使用 Mongoose 以及 Egg 中的 model
    Egg.js 中使用第三方插件以及 Egg.js 插件 egg-mongo-native 操作 mongodb 数据库
    egg定时任务
    jsx中给VUE绑定事件
    【T09】要认识到TCP是一个可靠的,但不是绝对可靠的协议
    PostgreSQL 高级SQL(五) 内建窗口函数
    PostgreSQL 高级SQL(四) 滑动窗口函数
    PostgreSQL 高级SQL(三) 窗口函数
    PostgreSQL 高级SQL(二) filter子句
    PostgreSQL 高级SQL(一)分组集
  • 原文地址:https://www.cnblogs.com/elontian/p/11272149.html
Copyright © 2020-2023  润新知