一、Oracle视图                                            

视图是虚表,没有具体物理数据,是通过实体表的一种计算映射逻辑。主要就是为了方便和数据安全;

实际当中的数据依然存在我们的实际表里面,只不过取数据的时候根据这个视图(子查询)从实际当中的表来查,把它当成一个表来用;

1.创建视图:

给用户授予创建视图的权限:grant create table,create view to scott;

查看当前用户下有哪些视图:select view_name from user_views;

查看用户的角色; select * from user_role_privs;

查看角色对应的权限;SELECT * FROM DBA_SYS_PRIVS WHERE GRANTEE='DBA';

授予用户dba权限    grant dba to scott;

3.使用视图:

4.只读视图:

Create view 视图名称as 查询语句with read only ;

5.删除视图  drop view v_emp

二、oracle约束条件:                                      

1.非空约束、默认值约束:

给约束起名字:stu_name_nn:
 
2.唯一约束,unique:
加了唯一约束后,就不能再email这个字段加重复的值了。

unique约束可以加null值,两个null值之间不认为是重复的;

//上面的都是字段级的约束,但是如果说要让名字和eamil的组合不能重复,怎么做?
 
---表级的约束:

3.主键约束:

主键逻辑意义上唯一标识整条记录。
主键的这个字段:不能为空、必须唯一;
或者:
 
4.外键约束:
班级表:
 
stu表的class列,参考class表的ID字段:
 

注意:

stu表的class这个字段存在外键约束class 的id
被参考字段必须是主键----class 的id必须为主键;主键非空、唯一

另外的写法:

5.check 检查约束

下面这个check约束是name必须为大写:
相当于这样的写法:

create table t_stu(
id number primary key,
name varchar2(20) check (name=upper(name))
)

check用的很少,一般在程序中已经进行验证了。。
 
 

三、                                            

orace学习操作(2)的更多相关文章

  1. orace学习操作(4)

    Orace游标: 一.游标简介: 使用游标,我们可以对具体操作数据,比如查询的结果,对行,列数据进行更加细致的处理.以及对其他DML操作进行判断等操作: 二.显示游标: 1.静态的指定变量类型: SQ ...

  2. Android – 学习操作NFC – 2

    在<Android – 学习操作NFC – 1>说明了Android在处理NFC tag的机制.tag dispatch system的运作流程,以及三种ACTION_NDEF_DISCO ...

  3. MySQL学习——操作自定义函数

    MySQL学习——操作自定义函数 摘要:本文主要学习了使用DDL语句操作自定义函数的方法. 了解自定义函数 是什么 自定义函数是一种与存储过程十分相似的过程式数据库对象.它与存储过程一样,都是由SQL ...

  4. MySQL学习——操作存储过程

    MySQL学习——操作存储过程 摘要:本文主要学习了使用DDL语句操作存储过程的方法. 了解存储过程 是什么 存储过程是一组为了完成特定功能的SQL语句集合. 使用存储过程的目的是将常用或复杂的工作预 ...

  5. MySQL学习——操作视图

    MySQL学习——操作视图 摘要:本文主要学习了使用DDL语句操作视图的方法. 了解视图 是什么 视图是从一个.多个表或者视图中导出的表,包含一系列带有名称的数据列和若干条数据行. 特点 视图不是数据 ...

  6. MySQL学习——操作表里的数据

    MySQL学习——操作表里的数据 摘要:本文主要学习了使用DML语句操作表里数据的方法. 插入数据 语法 通过传入数据插入: insert into 表名 [(列名1, …, 列名n)] values ...

  7. MySQL学习——操作数据库

    MySQL学习——操作数据库 摘要:本文主要学习了使用DDL语句操作数据库的方法. 创建数据库 语法 create database [if not exists] 数据库名 [default] ch ...

  8. (三)linux 学习 --操作文件和目录

    The Linux Command Line 读书笔记 - 部分内容来自 http://billie66.github.io/TLCL/book/chap05.html 文章目录 通配符 字符范围 ` ...

  9. selenium(3):学习操作元素基本方法

    来源:<selenium webdriver基于Python源码案例> 一.打开网页①第一步:从selenium里面导入webdriver模块②打开浏览器(Ie和Chrome对应下面的)③ ...

随机推荐

  1. Alphabet Cookies

    Alphabet Cookies 题目描述 Kitty likes cookies very much, and especially the alphabet cookies. Now, she g ...

  2. spring学习笔记Core Technologies

    Spring 框架最重要的是Ioc(Inversion of Control)容器,在这个基础之上衍生出了AOP(Aspect-Oriented Programming)技术,80/20法则,这货可以 ...

  3. kindle看扫描版pdf的解决办法

    (1)先把PDF crop (2)转JPEG (3)JPEG根据kindle的屏幕的分辨率,调整JPEG图像大小,kindle whater paper 大小为1448*1072 (4)   最后把j ...

  4. PAT 5-9 输出华氏-摄氏温度转换表   (10分)

    输入2个正整数lower和upper(lower≤\le≤upper≤\le≤100),请输出一张取值范围为[lower,upper].且每次增加2华氏度的华氏-摄氏温度转换表. 温度转换的计算公式: ...

  5. stm32 DAC配置

    VDDA 和 VSSA 为 DAC 模块模拟部分的供电,而 Vref+则是 DAC 模块的参考电压.DAC_OUTx 就是 DAC 的 输出通道了 (对应 PA4 或者 PA5 引脚). 由第一张图可 ...

  6. fullPage的使用

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  7. 51Nod 1072:威佐夫游戏 (威佐夫博奕)

    1072 威佐夫游戏  基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题  收藏  关注 有2堆石子.A B两个人轮流拿,A先拿.每次可以从一堆中取任意个或从2堆中取相同数 ...

  8. Python集成开发环境搭建

    ===================== 开始学习Python的开发,首先得搭建好集成开发的环境! 分为下面几个步骤: 操作系统平台:Windows XP/7/10 都可以 1.安装并配置JDK运行 ...

  9. java8 array、list操作 汇【2】)- (Function,Consumer,Predicate,Supplier)应用

    static class UserT { String name; public UserT(String zm) { this.name=zm; } public String getName() ...

  10. MySQL Disk--SSD 特性

    ======================================================================= SSD 特性 .随机读能力非常好,连续读性能一般,但比普 ...