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:\temp\testdelete.sql

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

 

posted @ 2017-08-02 19:55  阿肯新  阅读(163)  评论(0编辑  收藏  举报