zoukankan      html  css  js  c++  java
  • Oracle拾遗

        这次学习Oracle视频。还是学到了不少东西的。

     

        首先,这是一次系统的学习。对自己的知识体系是一次查漏补缺,曾经仅仅是简单的会用,如今看到出的问题,非常easy就能够想到是哪一部分出了问题。尤其是如今:新系统集中測试的时候。其作用更是明显。

     

        这次视频。从Oracle安装開始讲,说到了sql语句、多表查询、统计函数、数据伪列、序列、视图、同义词、索引这些常见的知识,也讲到了用户管理、权限分配和数据库备份等知识。

    能够说是一套非常好的新手教程。假设你仅仅是做开发而不是DBA。这套教程足够了。

     

    说说这套视频中我的收获吧!

    1、序列的使用

    曾经也听说过序列,可是自己没用过。由于总认为非常麻烦。所以没有使用过。这次项目中用到了,并且视频也讲到了,才发现。非常easy非常有用。

    语法:

    CREATE SEQUENCE myseq

         INCREMENT BY 1   -- 每次加几个 

         START WITH 1     -- 从1開始计数 

         NOMAXVALUE       -- 不设置最大值 

         NOCYCLE          -- 一直累加,不循环 

         CACHE 10; 

    使用的时候。比如插入,仅仅用在相应的列赋值myseq.NEXTVAL就可以。

    比如

    INSERT INTO emp VALUES (myseq.nextval, 'LEWIS');

    注意事项:

    1myseq有个currentval。也就是当前值,可是这个据说直接使用会有问题,必须先用nextval才干用它,详细大家遇到的时候查查吧

    2、当你对数据库导入导出时,或者备份时,要记得把序列一起备份出来,同一时候检查序列有没有被重置,假设被重置的话会导致主键冲突。

    2WhereHaving的差别

    Where:是在运行Group by操作之前进行的过滤,表示所有数据之中筛选出部分的数据,在Where中不能使用过统计函数。

    Having:实在Group By分组之后的再次过滤,能够使用统计函数。

    3Oracle自行维护的列

    Rownum:行号,每次查询都会变,不固定

    Rowid:每一行的物理地址的编号

    另外,当我们在使用PLSQL的时候,假设是QueryData命令,你会发现查到的数据是不能编辑的。可是,假设你使用的select语句时把rowid的话。是能够编辑的哦,非常方便的一个小技巧。

    4、联合查询

    两个查询到的集合使用以下的keyword:

    Union:联合查询,同样的部分不显示

    Union all:同样的部分显示

    Intsersect:仅仅显示同样的部分

    Minus:仅仅显示不同部分

    5、视图

    对于视图。相信大家都非常熟悉。

    今天想说的,也是我这个“孤陋寡闻”的人第一次知道的:视图是能够编辑的,包含增删改。

    假设你创建视图的时候使用了With readonly。那么视图是不能够增删改的

    假设使用了WITH CHECKOPTION,那么插入或改动的数据行必须满足视图定义的约束;

    当然。假设视图定义中有GROUP 函数,GROUPBY子句。DISTINCTkeyword时不能删除数据行

    6、数据库的备份(另写文章总结)


        总的来说,这套 视频的学习。用时短。收获大,想想原因:在最须要的时候学习,事半功倍啊。

  • 相关阅读:
    移动端按钮居底
    easyui用KindEditor编辑器
    查找数组中与后面项匹配的和猴子选大王
    before和after的样式符号
    jq的select
    验证最多2位小数,1到10 不超过10 带两位小数的正则表达式
    在谷歌浏览器下vue的@input事件问题
    mvc项目+vue+vant【进行中】
    微商代理查询系统 开发完成,免费体验试用哦!
    淘宝出了个麻吉宝区块连产品,附带麻吉宝邀请码!
  • 原文地址:https://www.cnblogs.com/gccbuaa/p/6933759.html
Copyright © 2011-2022 走看看