zoukankan      html  css  js  c++  java
  • 事务,约束,范式,视图,索引,pl/sql

    1.操作分类:  DML. DDL. DCL

    manipulation     definition   control

    2.transction 事务

    起始于DML,遇到 commit ,rollback语句自动commit提交。

    正常断开时,自动提交;非正常断开时,自动回滚。

    3.组合约束

    e.g.   constraint stu_name_email_uni unique(name,email)

      主键选择  
    stu                      (sno,sname) sno  
    course                 (cno,cname,ctch) cno  
    sc         (sno,cno,scgrade) sno,cno  

    4.外键约束

    被参考的字段必须为主键(主外键约束)

    已经被参考的字段不可删除

    建表的sql语句有必要保留

    5.数据字典表

    用户表

      table_name   user_tables
    select view_name from user_views
      constraint_name   user_constraints
    ... ...   ...

    6.index  索引

    创建:

         create index idx_stu_name_emial on stu (name,email);

    索引使读更快,但是修改变慢(如插入时要同时修改索引)

    7.view  视图

    视图可以简化查询语句,保护隐私数据,但是需要维护代价。            视图相当于一个子查询。

    8.sequence

    create  drop               sequence在oracle系统中自动线程同步了。

    9.范式   

    为了尽量减少数据冗余,但是要根据实际问题,不一定要严格遵循范式,有时弊端很大,实际系统有时本身不满足范式要求,要根据实际问题具体分析解决。

    第一范式:   有主键,列不可分。

    第二范式:   第一范式的基础上,消除部分依赖。           (即:非主键列完全依赖于主键组合,而不是依赖于主键组合的部分)

    第三范式:   第二范式的基础上,消除传递依赖。                           (即:非主键列间不存在传递函数依赖)

    10. pl/sql

    p:procedure 过程语言,包含分支和循环等。 弥补结构化sql语言的不足。

    tips&keywords:  oracle 布尔类型默认为空,不同于java,要赋初值。

    declare,变量声明 %type 属性,record 类型变量类似于变量类,使用%rowtype声明。

  • 相关阅读:
    mysql 分库分表
    策略模式
    JAVA NIO 选择器
    有关于web server架构的一个小疑问
    Android 吸入动画效果详解
    android中设置TextView/Button 走马灯效果
    浅谈Jquery的使用上篇
    ORA-00376:file x cannot be read at this time
    用VBA宏从一个工作薄复制内容到另一个工作薄
    ovirt node的安装简介
  • 原文地址:https://www.cnblogs.com/zx3707/p/5733203.html
Copyright © 2011-2022 走看看