第十五章:视图

--------------------------------------------------
--序列、索引------------------------------------------------
-----------------------------序列SEQUENCE---------------------序列是按照一定规则能自动增加/减少数字的一种数据库对象作用:一般用于主键自增
--创建简单的序列 :默认从1开始,每次自增1
create sequence seq_emp_id;
create sequence seq_person_id;
create sequence seq_person_pid;--访问简单序列  NEXTVAL和CURRVAL伪列
-- nextval返回序列的下一个值
-- currval返回当前会话序列值 :一定是在当前会话中执行了nextval之后才能执行currval
select seq_emp_id.nextval from dual;
select seq_emp_id.currval from dual;
--创建一张表create table person(pid number(4),pname varchar(10),sex   char(2) default '男',birthday  date,age   number(3),weight   number(6,2),address   varchar2(30))
drop table person;
--给person表添加数据
insert into person(pid,pname,sex,age) values(1,'zhangsan','女',10);
insert into person(pid,pname,sex,age) values(2,'lisi','女',10)
insert into person(pid,pname,sex,age) values(seq_person_id.nextval,'lisi','女',10)
insert into person(pid,pname,sex,age) values(seq_person_id.nextval,'zhangsan','女',10);
insert into person(pid,pname,sex,age) values(seq_person_pid.nextval,'zhangsan1','女',10);--创建复杂的序列
CREATE SEQUENCE seq_emp_empno
START WITH 10        --序列从10开始 :开始位置
INCREMENT BY 1       --序列每次增加1 :自增量
MAXVALUE 99999999999 --序列最大值999999999
MINVALUE 10         --序列最小值10
CYCLE             --序列循环,每次增加1,一直到99999999999后回到10 从新开始
CACHE 10;        --缓存中序列值个数为10CREATE SEQUENCE seq_emp_empno
START WITH 7935
INCREMENT BY 1
MAXVALUE 99999999999
MINVALUE 7935
CYCLE
CACHE 10;
insert into emp(empno,ename) values(seq_emp_empno.nextval,'wangwu1')
--访问复杂的序列
select seq_emp_empno.nextval from dual;使用序列新增一个部门,同时将10号部门的员工调到该部门去
--①创建序列
create sequence seq_dept_deptno
start with 60
increment by 10
--②给部门表调加数据
insert into dept(deptno,dname,loc) values(seq_dept_deptno.nextval,'实施部','iceking')
--③将10号部门的员工调到该部门去
update emp set deptno=seq_dept_deptno.currval where deptno=10;--修改序列注意:修改序列的语法没有START WITH子句。简单来说就是不能修改开始位置
--修改序列seq_emp_empno的自增量为2
alter sequence seq_emp_empno
increment by 2select * from person
select * from emp;
select * from dept;
delete  person;--删除序列
drop sequence seq_emp_empno;--序列的数字字典
select * from user_sequences;
--------------------------------------索引 indexs--------------------------------------
--rowid:伪列 ,在表中真实存在,表中每一行记录的id,可以理解为数据行的物理地址
--rownum:伪列  不在表中存在,是生成结果集的同时产生
select emp.*,rowid from emp;
--注意:通过rowid查询数据速度最快  使用ROWID检索及操作数据,效率最快select * from emp where ename='zhangsan';
select * from emp where rowid='AAAR3sAAEAAAACUAAB' --速度最快--索引:是对数据库表中一个或多个列的值进行排序的一种数据库对象。  索引是一种数据结构注意;如果查询条件中包含索引列才能提高查询速度先创建索引再调加数据                         --索引其实就是排了序的rowid作用:通过索引可以加速对表的查询速度优点:优化查询速度缺点:占用一定的内存,索引多了之后难维护,DML操作时速度慢什么情况下使用索引:数据量大和不经常操作并且访问次数高时可以创建索引--oracle中的索引数据结构:hash表、B+treeselect * from emp where empno=xx  --数据库会为表中的主键和唯一键默认添加索引   --为ename创建索引
create index index_emp_eanem on emp(ename);
select * from emp where ename='zhangsan';
--制造百万级别数据
create table emp_bak1 as select * from emp;
insert into emp_bak1 select * from emp_bak1;
select * from emp_bak1;
select * from emp_bak1 where ename ='zhangsan' --47m秒
--创建索引
create index index_emp_bak1_ename on emp_bak1(ename)
select * from emp_bak1 where ename ='zhangsan' --6秒
drop table emp_bak1;
--创建多列索引查询条件中包含deptno和job的索引才能生效,只包含一个不生效
CREATE INDEX    idx_emp_deptnojob ON  emp (deptno,job);--面试题:like in  not in会使索引失效吗? 会

Oracle第十五章:视图相关推荐

  1. Visual C++ 2008入门经典 第十五章 在窗口中绘图

    /*第十五章 在窗口中绘图 主要内容: 1 Windows为窗口绘图提供的坐标系统 2 设置环境及其必要性 3 程序如何以及在窗口中绘图 4 如何定义鼠标消息的处理程序 5 如何定义自己的形状类 6 ...

  2. 【JAVA SE】第十五章 ArrayList、LinkedList、HashMap和HashSet

    第十五章 ArrayList.LinkedList.HashSet和HashMap 文章目录 第十五章 ArrayList.LinkedList.HashSet和HashMap 一.ArrayList ...

  3. photoshop第十五章:制作商业卡片场景效果

    第十五章:制作商业卡片场景效果 1.制作证件寸照效果 素材: 效果: (1)Ctrl+N新建文件->名称:证件寸照->宽度:14厘米->高度:14厘米->分辨率:300像素/英 ...

  4. 游戏感:虚拟感觉的游戏设计师指南——第十五章 超级马里奥64

    这是一本游戏设计方面的好书 转自天:天之虹的博客:http://blog.sina.com.cn/jackiechueng 感谢天之虹的无私奉献 Word版可到本人的资源中下载 第十五章超级马里奥64 ...

  5. 【正点原子Linux连载】第十五章点亮LED-摘自【正点原子】I.MX6U嵌入式Linux C应用编程指南V1.1

    1)实验平台:正点原子阿尔法Linux开发板 2)平台购买地址:https://item.taobao.com/item.htm?id=603672744434 2)全套实验源码+手册+视频下载地址: ...

  6. 第十五章 使用管理门户SQL接口(一)

    文章目录 第十五章 使用管理门户SQL接口(一) 管理门户SQL工具 选择命名空间 用户自定义 执行SQL查询 编写SQL语句 表拖放 执行查询选项 显示计划按钮 SQL语句的结果 查询数据显示 查询 ...

  7. java十五章_java:第十五章

    第十五章 字符串1.字符串(String)的定义 String str="内容"; String str=new String(); //内容为null String str=ne ...

  8. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十五章:第一人称摄像机和动态索引...

    Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十五章:第一人称摄像机和动态索引 原文:Introduction to 3 ...

  9. Gradle 1.12用户指南翻译——第三十五章. Sonar 插件

    本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

  10. 第十五章 shell正则表达式

    第十五章 shell正则表达式 见图片 Shell正则表达式 正则表达式的分类 基本的正则表达式(Basic Regular Expression 又叫Basic RegEx 简称BREs) 扩展的正 ...

最新文章

  1. 用百度直达号获取新用户 让顾客直达商家服务
  2. 排个课表学会了拓扑排序!有点意思
  3. 聚类(中)层次聚类 基于密度的聚类算法
  4. VTK:可视化算法之CutWithCutFunction
  5. 一文弄懂java中的Queue家族
  6. 《数据库SQL实战》找出所有员工当前薪水salary情况
  7. 哈尔滨信息工程学院计算机在哪个校区,2021年哈尔滨信息工程学院有几个校区,大一新生在哪个校区...
  8. 夜深人静写算法(一)- 搜索入门
  9. 西雅图“货拉拉”融资$750万,“货运Uber”会成为下一个风口吗?
  10. 那些看着高大上的名词
  11. 繁体中文和简体中文编码
  12. cpu的核数和进程_CPU与核心及进程和线程认识
  13. Java批量建立文件夹
  14. 设计模式-责任型模式(责任链模式)
  15. WifiNetworkSelector 走读
  16. Python 爬虫的简单实例
  17. “互联网+”和跨界当道 大数据解码北京房产市场
  18. 智慧养老的痛点和解决方案的对接
  19. PyTorch3D 立体隐式形状渲染:教你构建场景 3D 结构
  20. 生活禅--铃木俊隆的12条生活准则

热门文章

  1. 山东省软件设计大赛参赛经验
  2. STM32CubeMX | | 使用小熊派玩转颜色识别传感器(纯手工打造E53传感器模块)
  3. 2021年6月编程语言排行来了!!
  4. 大学选修计算机课程内容,《大学计算机基础》学大纲(公共课).doc
  5. 自建微信公众号文章搜索舆情系统
  6. [JAVA冷知识]什么是逆变(contravariant)与协变(covariant)?数组是否支持协变逆变?泛型呢?
  7. 惠普打印机爆远程命令执行漏洞,黑客可任意操纵你的打印机
  8. python实现五大基本算法语句_python实现各种最优化算法
  9. Keep It Simple and Stupid是什么意思
  10. snapchat注册不到_如何将链接添加到您的Snapchat快照