`

oracle---view,sequence,rownum

阅读更多
1.视图:
功能:封装了一条复制的查询语句
create view 视图名称 as 子查询 ----视图不能像表一样修改的,没有视图结构修改这个说法
在Oracle中提供了一个替换视图的命令,如果没有替换命令,那么要修改视图只能删了再重建

CREATE OR REPLACE 视图名称 AS 子查询----系统进行删除及重建工作
注意:我们不应该update视图,因为如果我们update视图的话,那么他会修改实体表,
而视图的查询是有条件的,所以我们很可能在这个视图中看不到我们修改的数据,既然我们把视图当成一张表,
那么这种效果当然不合乎逻辑,为了避免这种情况,下面语法
1。with check option :不能更新视图的创建条件 (检查where的option,意思是不能更新where的选项)

create or replace view emp20
as
select * from emp where deptno = 20
with check option;//这句话的意思是deptno这个东西不能这样做 update emp20 set deptno = 30 where deptno = 20;
 但是可以这样做: update emp20 set ename = 'aa' where deptno = 20;
 视图的本身作用是查询而不是干其他的,不应该运行更改,所以我们应该加入第二条语句
create or replace view emp20
as
select * from emp where deptno = 20
with read only;
 
2. 序列:
 在很多数据库系统中都存在一个自动增长的列,如果现在要想在oracle中完成自动增长的功能,
 则只能依靠序列完成,所有的自动增长操作,需要用户手工完成
 create sequence myseq; //说白了,这就是一个变量而已
 序列创建完成之后,所有的自动增长应该由用户自己处理,所以在序列中提供了一下两个操作
  nextval ---取得序列的下个内容
  currval--- 取得序列的当前内容
insert into emp (empno) values (myseq.nextval);
drop sequence myseq;

如果想创建每次增长2的序列变量怎么办
create sequence myseq increment by 2 ;//这样每次取得都是奇数

默认情况下序列从1开始
create sequence myseq increment by 2 start with 10


3.ROWNUM---Oracle中的东西
ROWNUM说白了,每张表Oracle都会自动添加一个字段叫做ROWNUM
使用:现在只想显示前5条记录
select * from book where ROWNUM <= 5;
但是他和正常的列还是不同滴。。。因为select * from book where ROWNUM between 5 and 10; //会报未选定行
他只能从头开始或者从尾开始
所以,如果想要进行中间的截取操作,则只能使用子查询,因为使用了子查询之后,他作为一张临时表,他就变成了普通字段
例如现在假设每页显示5条,第二页应该显示6~10条,那么对于数据库操作来说,他在查询的时候应该首先查询出1~10条,
然后再取出后5条
select * 
from (select ROWNUM rn,id from book where rn<=10) t  
where t.rn >5

分享到:
评论

相关推荐

    oracle的一些相关网页介绍

    在"oracle view - - ITeye技术网站.mht"中,可能包含了视图的创建、查询和管理,以及视图在数据抽象、权限控制和简化复杂查询方面的应用。 4. **序列(Sequence)**: Oracle序列是一种自动增长的数字序列生成器,...

    达内-ORACLE学习笔记

    - **视图(VIEW)**:虚拟表,基于一个或多个表的查询结果,简化复杂查询和保护数据。 - **索引(INDEX)**:提高数据检索速度的数据库结构,类似于书籍的目录。 ### Oracle特性和注意事项 Oracle数据库拥有众多...

    Oracle考试必备知识

    - ROWNUM:当前行号,在查询结果集中对行进行编号。 3. **SQL语句**: - DDL(数据定义语言):用于定义数据库结构,如`CREATE`、`ALTER`、`DROP`等。 - DML(数据操纵语言):用于修改数据库数据,如`INSERT`、...

    Oracle 11g详细操作

    ### Oracle 11g 操作详解 #### 一、Oracle 11g 安装与配置 ##### 1.1 安装准备 - **安装文件**:获取 Oracle 11g 的安装文件,通常包括数据库服务器端和客户端工具。 - **系统检测**:在安装前确保计算机满足 ...

    Oracle学习笔记.doc

    - 隐含字段ROWNUM: 默认情况下,Oracle会在查询结果中自动添加ROWNUM字段。 - 显示出前五条数据: `SELECT * FROM table WHERE ROWNUM ;`. - 显示大于5行以后的数据: `SELECT * FROM (SELECT * FROM table) WHERE ...

    oracle图形界面操作和数据备份和分页-oracle表操作和数据库对象

    CREATE VIEW view_name AS SELECT column1, column2,... FROM table_name WHERE condition; ``` 通过上述内容的详细介绍,我们可以看到 Oracle 数据库不仅提供了强大的图形界面工具来简化数据库管理操作,还具备...

    Oracle经典教程(推荐)word版

    - **视图(View)**: 逻辑表,其内容由存储在表中的数据组成。 - **索引(Index)**: 加快数据检索速度的数据结构。 - **序列(Sequence)**: 生成连续整数的数据库对象。 - **同义词(Synonym)**: 对表、视图...

    Oracle经典教程.docx

    - 数据库对象是构成数据库的基本元素,常见的对象包括表(Table)、视图(View)、索引(Index)、同义词(Synonym)、序列(Sequence)等。 **同义词** - 同义词是一种为其他数据库对象(如表或视图)提供别名的...

    精髓Oralcle讲课笔记

    -- 首先,以超级管理员的身份登录oracle sqlplus sys/bjsxt as sysdba --然后,解除对scott用户的锁 alter user scott account unlock; --那么这个用户名就能使用了。 --(默认全局数据库名orcl) 1、...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 第一章 Oracle入门 一、 数据库概述 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今五十年前。简单来说是本身可视...

    oracle10笔记

    ### Oracle 10g 笔记精要 #### 1. SQL 概述 - **定义**:SQL(Structured Query Language)是一种用于管理和处理数据库的标准计算机语言。 - **功能**: - 数据查询(Data Query) - 数据操作(Data Manipulation...

    Oracle10G培训日志

    ### Oracle 10G 培训日志知识点解析 #### 一、SQL概述与数据库概念 - **SQL概述**:SQL(Structured Query Language),即结构化查询语言,是用于管理关系型数据库的标准语言。 - **数据库定义**:数据库是一个长期...

    oracle 基本语法

    - **创建视图**:`CREATE VIEW 视图名 AS SELECT * FROM 表名;` - **创建索引**:`CREATE INDEX 索引名 ON 表名 (列名);` - **创建同义词**:`CREATE SYNONYM 同义词名 FOR 表名;` #### 八、查询语句优化 - **使用...

    oracle基础知识

    - `CREATE SEQUENCE`: 创建序列。 - `CREATE PROCEDURE`: 创建过程。 - `CREATE ROLE`: 创建角色。 - `GRANT ANY PRIVILEGE`: 授予任何权限。 - `DROP ANY ROLE`: 删除任何角色。 - `CREATE PUBLIC SYNONYM`: 创建...

    Oracle事例

    select * from ( select rownum row_id,b.* from (select a.* from sys_oper a) b ) where row_id between 15 and 20 15、对公共授予访问权 grant select on 表名 to public; create public synonym 同义词名 ...

    oracle第13讲使用视图、索引、序列和同义词[定义].pdf

    Oracle数据库系统是一个强大的关系型数据库管理系统,广泛应用于各种软件开发项目。在第13讲中,我们重点关注了四个核心概念:视图、索引、序列和同义词,这些都是数据库管理和优化的重要工具。 1. 视图(View) ...

    Oracle & SQL 入门精简介绍

    #### 十二、序列 (Sequence) 序列是一种自动生成连续整数的对象,常用于为主键或其他需要唯一标识的列自动分配值。 #### 十三、视图 (View) 视图是从一个或多个表中通过SELECT语句导出的虚拟表。它并不实际存储...

Global site tag (gtag.js) - Google Analytics