• SQL分类,DDL,DML,DCL


     SQL分类

    DDL(Data Definition Languages)

      数据定义语言,这些语句定义了不同的数据字段、数据库、表、列、索引等数据。

      常用的语句关键字主要包括

        create(添加),drop(删除),alter(修改)

    DML (Data Manipulation Languges)

      数据操纵语句,用于添加、删除、更新和查询数据库记录,并检查数据完整性。

      常用的语句关键字主要包括

        insert(插入字段),delete(删除字段),update(修改字段),select(查询表中的字段)

    DCL(Data Control Languages)

      数据控制语句

        用于控制不同数据段直接的许可和访问级别的语句,这些语句定义了数据库、表、字段、、用户访问权限和安全级别。

      主要常用语句关键字包括

        grant :

        命令grant delete,update,select on sample_a to public;对所有数据库用户给出指明的权限,而命令grant select,update,insert,delete on sample_a to teplownd,greerw;只允许用户teplownd和greerw对表sample_a做命令中所列出的动作。

        insert权限允许在其他用户的表中建立行。语句grant insert on sample_a to public;允许所有用户在sample_a中建立新的行。Oracle允许在单条grant语句中授多个权限,SQL语句grant insert,select on sample_a to public;等价于两个语句:grant select on sample_a to public;语句和grant insert on sample_a to ublic;语句

        删除权限允许其他用户删除指定表的信息行。此权限非同小可,因此我们建议小心使用。下面是一个实际例子:如果一个用户连接到产品数据库,而他还以为他连接的是测试数据库。他发布了一条命令delete from people_master;并且Oracle做出了反应12003 rows delet.ed在退出SQL * Plus后,下一个程序访问people_master查看Rick Bower的记录,会被告知记录不存在。

      select权限允许用户查看其他用户表中的内容。语句grant select on sample_3 to public;将允许所有用户浏览表sample_3中的内容,而语句grant select on sample_3 to ops$rosenberge,ops$abbeyms;则只允许两个用户查看表sample_3中的内容。注意,当多个用户接受授权时,用户名之间要用逗号分隔。( 提示以public为授权对象时,所有数据库用户都获得指定的权限。如果用户的数据库有15000个用户,则单独授权就需要15000次(每个用户一次),而授权给public,一次即可。)

       update权限允许其他用户修改非自己表中的数据。语句grant update on sample_a teplownd;允许用户teplownd修改表sample_a中的信息。

      revike:

      revoke语句:收回授予的权限 

      ----对用户member授权,允许其具有对数据表person的更新和删除的操作权限:

      GRANT UPDATE,DELETE ON person

      TO member WITH GRANT OPTION --WITH GRANT OPTION表示该用户可以向其他用户授予他所拥有的权限;

      

      -----禁止member用户对数据表person的更新权限:

      DENY UPDATE ON person

      TO member CASCADE;

      

      -----收回用户member对person表的删除权限:

      REVOKE DELETE ON person

      FROM member

        

  • 相关阅读:
    ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
    Cannot open url. please check this url is correct
    Execution default of goal org.springframework.boot:spring-boot-maven-plugin:1.5.6.RELEASE:repackage failed: Unable to find main class
    eclipse点击空白处自动打开项目
    Caused by: org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 2
    git忽略文件
    org.elasticsearch.transport.ReceiveTimeoutTransportException[cluster:monitor/nodes/liveness] request_id [31] timed out after [5000ms]
    Could not resolve placeholder
    分布式架构--第一篇--项目拆分(maven命令生成多模块项目)
    spring mvc官网下最新jar搭建框架-静态资源访问处理-注解-自动扫描
  • 原文地址:https://www.cnblogs.com/Xingtxx/p/9784811.html
Copyright © 2020-2023  润新知