Oracle数据库总结:

Oracle数据库之集合运算
Oracle数据库之数据处理
Oracle数据库之建表和管理表
Oracle数据库之对象视图、索引、序列、同义词

视图:

语法:

create [or replace] view viewnameassql语句[with read only][with check option]

SQL> create view empinfoview
2 as
3 select e.empno,e.ename,e.sal,e.sal*12 annsal,d.dname
4 from emp e,dept d
5 where e.deptno=d.deptno;
create view empinfoview
*
第 1 行出现错误:
ORA-01031: 权限不足

注意:权限不足,需要管理员授予权限:grant create view to scott;

SQL> /

视图已创建。

SQL> desc empinfoview

名称                                      是否为空? 类型----------------------------------------- -------- ----------------------------EMPNO                                     NOT NULL NUMBER(4)ENAME                                              VARCHAR2(10)SAL                                                NUMBER(7,2)ANNSAL                                             NUMBERDNAME                                              VARCHAR2(14)

SQL> select * from empinfoview;

    EMPNO ENAME             SAL     ANNSAL DNAME
---------- ---------- ---------- ---------- --------------                      7369 SMITH             800       9600 RESEARCH                            7499 ALLEN            1600      19200 SALES                               7521 WARD             1250      15000 SALES                               7566 JONES            2975      35700 RESEARCH                            7654 MARTIN           1250      15000 SALES                               7698 BLAKE            2850      34200 SALES                               7782 CLARK            2450      29400 ACCOUNTING                          7788 SCOTT            3000      36000 RESEARCH                            7839 KING             5000      60000 ACCOUNTING                          7844 TURNER           1500      18000 SALES                               7876 ADAMS            1100      13200 RESEARCH                            EMPNO ENAME             SAL     ANNSAL DNAME
---------- ---------- ---------- ---------- --------------                      7900 JAMES             950      11400 SALES                               7902 FORD             3000      36000 RESEARCH                            7934 MILLER           1300      15600 ACCOUNTING                          已选择 14 行。

SQL> create or replace view empinfoview
2 as
3 select e.empno,e.ename,e.sal,e.sal*12 annsal,d.dname
4 from emp e,dept d
5 where e.deptno=d.deptno
6 with read only;

视图已创建。

SQL> --with check option 只能操作看得到的部分

序列:

语法:

create sequence seqname;(其中有currval和nextval列属性)

SQL> --sequence
SQL> create sequence myseq;

序列已创建。

SQL> create table testseq
2 (tid number,
3 tname varchar2(20));

表已创建。

SQL> select myseq.currval from dual;
select myseq.currval from dual
*
第 1 行出现错误:
ORA-08002: 序列 MYSEQ.CURRVAL 尚未在此会话中定义

SQL> select myseq.nextval from dual;

   NEXTVAL
----------                                                                      1                                                                      已选择 1 行。

SQL> select myseq.currval from dual;

CURRVAL
----------                                                                      1                                                                      已选择 1 行。

SQL> – insert into testseq(tid,tname) values(?,?);
SQL> insert into testseq(tid,tname) values(myseq.nextval,‘aaa’);

SQL> select * from testseq;

      TID TNAME
---------- --------------------                                                 2 aaa                                                                  3 aaa                                                                  4 aaa                                                                  5 aaa                                                                  已选择 4 行。

SQL> commit;

提交完成。

SQL> insert into testseq(tid,tname) values(myseq.nextval,‘aaa’);

已创建 1 行。

SQL> /

已创建 1 行。

SQL> rollback;

回退已完成。

SQL> insert into testseq(tid,tname) values(myseq.nextval,‘aaa’);

已创建 1 行。

SQL> select * from testseq;

     TID TNAME
---------- --------------------                                                 2 aaa                                                                  3 aaa                                                                  4 aaa                                                                  5 aaa                                                                  8 aaa                                                                  已选择 5 行。

索引 index:

语法:

create index indexnameon tablename(column...);

SQL> create index myindex
2 on emp(deptno);

索引已创建。

同义词(别名):表,视图,存储过程

SQL> show user
USER 为 “SCOTT”
SQL> select count() from hr.employees;
select count(
) from hr.employees
*
第 1 行出现错误:
ORA-00942: 表或视图不存在

SQL> select count(*) from hr.employees;

COUNT(*)
----------                                                                      107                                                                      已选择 1 行。

SQL> --为hr.employees起别名 —> 同义词

SQL> create synonym hremp for hr.employees;
create synonym hremp for hr.employees
*
第 1 行出现错误:
ORA-01031: 权限不足

SQL> /

同义词已创建。

SQL> select count(*) from hremp;

COUNT(*)
----------                                                                      107                                                                      已选择 1 行。

Oracle数据库之对象视图、索引、序列、同义词相关推荐

  1. Oracle数据库模式对象管理

    实验四 Oracle数据库模式对象管理 一.预习报告 一. 实验目的 1) 掌握表的创建与管理. 2) 掌握索引的创建与管理. 3) 掌握视图的创建与管理. 4) 掌握序列的创建与管理. 5) 了解簇 ...

  2. 简述oracle的主要数据库对象,Oracle数据库数据对象分析

    Oracle数据库数据对象分析 Oracle数据库数据对象中最基本的是表和视图,其他还有约束.序列.函数.存储过程.包.触发器等.对数据库的操作可以基本归结为对数据对象的操作,理解和掌握Oracle数 ...

  3. oracle中表和视图的区别,Oracle数据库中表与视图的应用

    Oracle数据库是被很多人所拥护的一种关系型数据库管理系统,能都处理大批量的数据,在网络方面应用的也比较多.Oracle数据对象中最基本的是表和视图,表由记录(行row)和字段(列column)构成 ...

  4. ORACLE数据库在导入导出时序列不一致的问题

    ORACLE数据库在导入导出时序列不一致的问题 在使用ORACLE数据库时,当给一个表设置自增字段时,我们经常会使用到序列+触发器来完成.但当你需要对数据库进行导入导出时,序列很容易出问题. 当你将数 ...

  5. oracle 10g 学习之视图、序列、索引、同义词(9)

    目标 通过本章学习,您将可以: l  描述视图 l  创建和修改视图的定义,删除视图 l  从视图中查询数据 l  通过视图插入, 修改和删除数据 l  使用"Top-N" 分析 ...

  6. oracle视图如何创建索引,ORACLE 创建视图索引序列

    /* 视图View 视图是从若干基本表和(或)其他视图构造出来的表 视图存放的都是查询语句,并没有真实的数据 虚表 作用 限制对数据的操作 复杂查询变简单 提供相同数据的不同显示 UNION ALL ...

  7. oracle 索引 序列,【Oracle】表、视图、序列、索引

    表(数据类型.约束).修改表结构 表的创建:create table 表名(字段名 数据类型 [约束]): 表的删除:drop table 表名: oracle表包括: 表名.字段.数据类型.[约束] ...

  8. Oracle数据库如何创建视图【示例演示】

    视图:是基于一个表或多个表或视图的逻辑表,本身不包含数据,通过它可以对表里面的数据进行查询和修改.视图基于的表称为基表,Oracle的数据库对象分为五种:表,视图,序列,索引和同义词. 视图是存储在数 ...

  9. oracle实验报告4:Oracle数据库模式对象管理(含实验小结)

    实验目的 1.掌握表的创建与管理. 2.掌握索引的创建与管理. 3. 掌握视图的创建与管理. 4. 掌握序列的创建与应用. 实验设备及器材 安装有ORACLE软件的计算机 实验内容 1.创建表. 2. ...

最新文章

  1. 自然语言处理算法工程师历史最全资料汇总-基础知识点、面试经验
  2. python3+scapy扫描获取局域网主机ip和mac
  3. leetcode-217-存在重复元素
  4. linux kill命令详解
  5. MongoDB Sharding 请勿复用已删除的 namespace
  6. 360浏览器怎么关闭全屏看大图提示条
  7. SVN下载,安装,配置,常用操作 svn教程
  8. kali2020 中文乱码问题
  9. 大学计算机系学unity,上海交通大学计算机科学与工程系(CSE)
  10. maven PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable
  11. Katalon自动化测试基础教程(一)
  12. 知识巩固源码落实之3:缓冲区ringbuffer
  13. 计算机控制器输入设备的功能是,计算机5大部件之一的控制器的作用是什么?...
  14. 安全科普:流量劫持的方式和途径
  15. 酷派删除android系统软件,修复软件实测 被删的手机资料能否找回?
  16. Nero 刻录系统盘
  17. 博图CPU版本不一致
  18. 用友uap nc65 如何实现一个下拉框(枚举类型实体)
  19. 熊猫逝去,舞男头闪亮登场,感染下载者何时休?
  20. stm32毕业设计 智能指纹识别门禁系统 - 物联网 单片机

热门文章

  1. ESP8266擦除flash
  2. 波卡链Substrate (6)SubstrateUI界面
  3. Hyperledger Fabric 链码(3) 生命周期和API
  4. C++ Primer 5th笔记(chap 14 重载运算和类型转换)lambda函数对象
  5. 详解虚函数的实现过程之单继承(2)
  6. IDA Pro7.0使用技巧总结使用
  7. 011 数据结构逆向—二叉树
  8. 动态调试android, ddmsida
  9. 配置SQL Server数据库连接
  10. 微程序控制器原理(增量方式和断定方式结合法)