zoukankan      html  css  js  c++  java
  • 数据库DML操作(DCL了解)

    DQL:SELECT * FROM 表名

    DML(数据操作语言,它是对表记录的操作(增、删、改)!)

    1. 插入数据
    * INTERT INTO 表名(列名1,列名2, ...) VALUES(列值1, 列值2, ...);
      > 在表名后给出要插入的列名,其他没有指定的列等同与插入null值。所以插入记录总是插入一行,不可能是半行。
      > 在VALUES后给出列值,值的顺序和个数必须与前面指定的列对应
    * INTERT INTO 表名 VALUES(列值1, 列值2)
      > 没有给出要插入的列,那么表示插入所有列。
      > 值的个数必须是该表列的个数。
      > 值的顺序,必须与表创建时给出的列的顺序相同。

    在数据库中所有的字符串类型,必须使用单引,不能使用双引!
    日期类型也要使用单引!

    // 插入所有列
    INSERT INTO stu(
      number, name, age, gender
    )
    VALUES(
      'ITCAST_0001', 'zhangSan', 28, 'male'
    );
    // 插入部分列,没有指定的列默认为NULL值
    INSERT INTO stu(
      number, name
    ) VAKLUES(
      'ITCAST_0002', 'liSi'
    );
    // 不给出插入列,那么默认为插入所有列!值的顺序要与创建表时列的顺序相同
    INSERT INTO stu VALUES(
      'ITCAST_0003', 'wangWu', 82, 'female'
    );

    2. 修改数据
    * UPDATE 表名 SET 列名1=列值1, 列名2=列值2, ... [WHERE 条件]
    * 条件(条件可选的):
      > 条件必须是一个boolean类型的值或表达式:UPDATE t_person SET gender='男', age=age+1 WHERE sid='1';
      > 运算符:=、!=、<>、>、<、>=、<=、BETWEEN...AND、IN(...)、IS NULL、NOT、OR、AND
    列如:
     

    WHERE age >= 18 AND age <= 80
    WHERE age BETWEEN 18 AND 80
    
    WHERE name='zhangSan' OR name='liSi'
    WHERE name IN ('zhangSan', 'liSi')
    WHERE age IS NULL, //不能使用等号
    WHERE age IS NOT NULL


    3. 删除数据
    * DELETE FROM 表名 [WHERE 条件];
    * TRUNCATE  TABLE 表名:TRUNCATE是DDL语句,它是先删除drop该表,再create该表。而且无法回滚!!!

    DCL(理解)

    * 一个项目创建一个用户!一个项目对应的数据库只有一个!
    * 这个用户只能对这个数据库有权限,其他数据库你就操作不了了!

    1. 创建用户
      * CREATE USER 用户名@IP地址 IDENTIFIED BY '密码';
        > 用户只能在指定的IP地址上登录
      * CREATE USER 用户名@'%' IDENTIFIED BY '密码';
        > 用户可以在任意IP地址上登录

    2. 给用户授权
      * GRANT 权限1, … , 权限n ON 数据库.* TO 用户名@IP地址
        > 权限、用户、数据库
        > 给用户分派在指定的数据库上的指定的权限
        > 例如;GRANT CREATE,ALTER,DROP,INSERT,UPDATE,DELETE,SELECT ON mydb1.* TO user1@localhost;
          * 给user1用户分派在mydb1数据库上的create、alter、drop、insert、update、delete、select权限
      * GRANT ALL ON 数据库.* TO 用户名@IP地址;
        > 给用户分派指定数据库上的所有权限

    3. 撤销授权
      * REVOKE 权限1, … , 权限n ON 数据库.* FROM 用户名@IP地址;
        > 撤消指定用户在指定数据库上的指定权限
        > 例如;REVOKE CREATE,ALTER,DROP ON mydb1.* FROM user1@localhost;
          * 撤消user1用户在mydb1数据库上的create、alter、drop权限

    4. 查看权限
      * SHOW GRANTS FOR 用户名@IP地址
        > 查看指定用户的权限

    5. 删除用户
      * DROP USER 用户名@IP地址

  • 相关阅读:
    Lua获取当前时间
    标准库
    Cocos2d-x retain和release倒底怎么玩?
    lua 中处理cocos2dx 的button 事件
    探讨把一个元素从它所在的div 拖动到另一个div内的实现方法
    从 ie10浏览器下Symbol 未定义的问题 探索vue项目如何兼容ie低版本浏览器(ie9, ie10, ie 11 )
    setTimeout里无法调用鼠标事件的event
    浅谈HTTP缓存以及后端,前端如何具体实现HTTP缓存
    window7电脑git设置快捷命令
    从获取点击事件根元素谈 target和currentTarget
  • 原文地址:https://www.cnblogs.com/lxp503238/p/6595953.html
Copyright © 2011-2022 走看看