MySQL学习(四)

来源:互联网 发布:java split多个分隔符 编辑:程序博客网 时间:2024/06/06 12:26

联接与多张表的操作

  • AS会引用某个查询的结果来安插至另一个表中
CREATE TABLE prossion(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,profession VARCHAR(10))ASSELECT profession FROM my_contact GROUP BY profession ORDER BY profession;

子查询

  • 关联子查询是指内层查询的解析需要依赖外层查询的结果。(一般使用IN或NOT IN)
    如果子查询可以独立运行且不会引用外层查询的任何结果,即称为非关联子查询。内层查询先被RDBMS解释,然后才输出到外层查询。

事务

  • 事务是一群可完成一组工作的SQL语句
  • ACID原则
    ATOMICITY原子性。事务里的每一个步骤都必须完成,否则只能都不完成。
    CONSISTENCY一致性。事务完成后应该维持数据库的一致性。
    ISOLATION隔离性。表示每次事务都会看到具有一致性的数据库,无论其他事务有什么行动。
    DURABILITY持久性。事务完成后,数据库需要正确的存储数据并保护数据免受断电或其他威胁的伤害。
  • 有三种SQL事务工具可以保障账户的安全
    START TRANSACTION 持续追踪后续所有SQL语句,直到你输入COMMITROLLBACK 为止。
    COMMIT如果所有语句都已妥当,改变后的结果也不错,输入COMMIT让一切成真
    ROLLBACK可以逆转,让每件事回到START TRANSACTION前的状态。
  • 存储引擎必须是BDB或InnoDB,两种支持事务的引擎之一

安全性

  • GRANT TO授予权限
GRANT SELECT ON`table`TO user(WITH GRANT OPTION)

括号内的表示让用户能把刚刚获得的权限授予其他用户
* REVOKE撤销权限

REVOKE SELECT ON`table`FROMuser

也可以WITH GRANT OPTION

0 0
原创粉丝点击