Oracle 的常用概念

SQL优化(数据库的优化)
  1. 尽量使用列名(不用*)
  2. where解析顺序: 右--》 左
  3. 自连接不适合操作大表
  4. 尽量使用多表查询不使用子查询语句
  5. 尽量不要使用集合运算

SQL中的null值:
  1. 包含null的表达式都为null
  2. null永远!=null
  3. 如果集合中含有null,不能使用not in; 但可以使用in
  4. null的排序(当排序列中有null时,使用 nulls last || nulls first 决定null的位置)
    select * from emp order by comm desc nulls last
  5.组函数(多行函数)自动滤空,可以嵌套滤空函数 来屏蔽他的滤空功能


伪表:
  dual(常使用在from后面,当做一张无数据表使用)

伪列:
  level: 层次查询中的层级标号.
  ROWNUM: 列的编号:
    1. rownum永远按照默认的顺序生成(先于排序生成);
    2. rownum只能使用 < <=; 不能使用> >=
    3. rowid 行地址 指向数据文件中的位置

临时表:

    1. create global temporary table *****
    2. 自动创建: order by
      特点:当事务或者会话结束的时候,表中的数据自动删除


SQL和SQL*PLUS的区别:   SQL没有简写,sql*plus关键字可以被缩写

Oracle是自动开启事务
  1. 起始标志:事务中第一条DML语句
  2. 结束标志:提交:    显式 commit
            隐式 正常退出(exit),DDL,DCL
        回滚:    显式 rollback
            隐式 非正常退出,掉电,宕机
      savepoint a;
      rollback to savepoint a;

全局事物(分布式事务):  操作的对象不一定是数据库.

执行其他文件:   SQL> @d: emp estdelete.sql

管理员登录有:   密码认证,  主机认证/外部认证   三种情况.

原文地址:https://www.cnblogs.com/soficircle/p/7275747.html