创建一个名称为EMPLOYEES_VU的视图,它基于EMPLOYEES表中的雇员号、雇员名和部门号。将雇员名的列标题改为EMPLOYEE。

CREATE VIEW EMPLOYEES_VU AS SELECT EMPLOYEE_ID EMPLOYEE,FIRST_NAME,LAST_NAME,DEPARTMENT_ID FROM EMPLOYEES;

从USER_VIEWS数据字典视图中选择视图名字和文本

SELECT * FROM USER_VIEWS;

使用EMPLOYEES_VU视图,输入一个查询来显示所有的雇员名和部门号

SELECT FIRST_NAME,LAST_NAME,DEPARTMENT_ID FROM EMPLOYEES_VU;

创建一个名为DEPT50视图,其中包含部门50中的所有雇员的雇员号、雇员名和部门号,视图的列标签为EMPNO、EMPLOYEE和DEPTNO,不允许通过视图将一个雇员重新分配到另一个部门

CREATE OR REPLACE VIEW DEPT50(EMPNO,EMPLOYEE,DEPTNO) AS SELECT EMPLOYEE_ID,LAST_NAME,DEPARTMENT_ID FROM EMPLOYEES WHERE DEPARTMENT_ID=50 WITH CHECK OPTION;

视图重新指定Matos到部门80

UPDATE DEPT50 SET DEPTNO=80 WHERE EMPLOYEE='Matos';

ORA-01402: 视图 WITH CHECK OPTION where 子句违规

创建一个名为SALARY_VU的视图,该视图基于所有雇员的名字、部门号、薪水和薪水级别。用EMPLOYEES、DEPARTMENTS和JOB_GRADES表,分别命名列标签为Employy、Department、Salary和Grade。

GRANT SELECT ON SALGRADE TO HR;

CREATE TABLE SAL_LEVEL AS SELECT * FROM SCOTT.SALGRADE;

CREATE OR REPLACE VIEW SALARY_VU(Employee,Department,Salary,Grade)

AS

SELECT EMPLOYEES.LAST_NAME,DEPARTMENTS.DEPARTMENT_NAME,EMPLOYEES.SALARY,SAL_LEVEL.GRADE

FROM EMPLOYEES,DEPARTMENTS,SAL_LEVEL

WHERE EMPLOYEES.DEPARTMENT_ID=DEPARTMENTS.DEPARTMENT_ID AND (EMPLOYEES.SALARY  BETWEEN SAL_LEVEL.LOSAL AND SAL_LEVEL.HISAL);

创建一个表DEPT_2复制到DEPT内容,并在创建表之后给department_id设置主键。

CREATE TABLE DEPT_2 AS SELECT * FROM DEPT;

ALTER TABLE DEPT_2 ADD CONSTRAINT PK_1 PRIMARY KEY(DEPTNO);

SQL语句常见视图操作部分试题(一)的更多相关文章

  1. SQL语句之数据库操作

    SQL语句系列 1.SQL语句之行操作 2.SQL语句之表操作 3.SQL语句之数据库操作 4.SQL语句之用户管理 占坑,带写……

  2. SQL语句之表操作

    SQL语句系列 1.SQL语句之行操作 2.SQL语句之表操作 3.SQL语句之数据库操作 4.SQL语句之用户管理 写在前面 在上一篇博文里面我整理了“行”级别的操作,分别是“增(insert).删 ...

  3. SQL语句之行操作

    SQL语句系列 1.SQL语句之行操作 2.SQL语句之表操作 3.SQL语句之数据库操作 4.SQL语句之用户管理 关系型数据库的存储形式 在关系型数据库中,数据都是以类似于Excel表格的形式存储 ...

  4. MySQL之唯一索引、外键的变种、SQL语句数据行操作补充

    0.唯一索引 unique对num进行唯一限制,表示num是独一无二的,uql是唯一索引名称 上面为联合索引:num和xx不能完全一样  1.外键的变种 a. 用户表和部门表 用户: 1 alex 1 ...

  5. Entity Framework Code First执行SQL语句、视图及存储过程

    1.Entity Framework Code First查询视图 Entity Framework Code First目前还没有特别针对View操作的方法,但对于可更新的视图,可以采用与Table ...

  6. mysql 使用Navicat Lite如何打开‘查询编辑器’,使用sql语句对表进行操作!

    今天第一次使用mysql,尽然连查询编辑器都找不到,研究了半天,询问了下大牛,才搞出来,准备写下来,后面方面忘记了有查找的地方,哈哈哈~~ 如何打开"查询编辑器",使用sql语句进 ...

  7. LINQ体验(18)——LINQ to SQL语句之视图和继承支持

    视图 我们使用视图和使用数据表类似,仅仅需将视图从"server资源管理器/数据库资源管理器"拖动到O/R 设计器上,自己主动能够创建基于这些视图的实体类.我们能够同操作数据表一样 ...

  8. MySQL慢SQL语句常见诱因

    原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11429037.html 1. 无索引.索引失效导致慢查询 如果在一张几千万数据的表中以一个没有索引的列 ...

  9. C# 直接使用sql语句对数据库操作 (cmd.ExecuteNonQuery)

    只介绍读和删 不管使用什么方法来对数据库进行操作都绕不开和数据库的连接问题,所以咱们先在App.config中添加连接字段 <connectionStrings> <add name ...

随机推荐

  1. windows命令行下用netsh实现端口转发(端口映射)

    微软Windows的netsh是一个命令行脚本实用工具.使用netsh工具 ,可以查看或更改本地计算机或远程计算机的网络配置.不仅可以在本地计算机上运行这些命令,而且可以在网络上的远程计算机上运行. ...

  2. 【RF库XML测试】Add Element

    Name:Add ElementSource:XML <test library>Arguments:[ source | element | index=None | xpath=. ] ...

  3. Hadoop集群三种作业调度算法介绍

    Hadoop集群中有三种作业调度算法,分别为FIFO,公平调度算法和计算能力调度算法 先来先服务(FIFO) Hadoop中默认的调度器FIFO,它先按照作业的优先级高低,再按照到达时间的先后选择被执 ...

  4. python --葵花宝典

    1.python 函数 定义 ---def() def  fun(): print(“我是小甲鱼!!”) 调用函数 a =fun() print (a) 即可  ,注:函数调用是由上而下: 2.pyt ...

  5. 嵌入式系统之ubootENV环境变量

    从bootm 命令讲起 1 找到linux的内核入口 Bootm命令通过读取uImage的头部0×40字节的信息,将uImage定位到正确的地址,同时找到linux的内核入口地址. 这个地方就涉及到u ...

  6. N76E003之ISP

    Flash存储器支持硬件编程和应用编程(IAP).如果产品在研发阶段或产品需要更新软固件时,硬件编程就显得不太方便,采用在系统编程(ISP)方式,可使这一过程变得方便.执行ISP不需要将控制器从系统板 ...

  7. eclipse闪退解决

    log: !SESSION 2014-03-12 14:02:45.207 -----------------------------------------------eclipse.buildId ...

  8. 类型化dataset分页

    SELECT TOP (@每页行数) 所选列FROM 表名WHERE (主键 NOT IN( SELECT TOP ((@页数-1)*@每页行数) 主键FROM 表名where ( 条件)))AND ...

  9. window下遍历并修改文件

    今天需要写一个遍历文件夹下的所有文件,试了试以前的方法竟然报错了.重新改了一下. #include <iostream> #include <stdlib.h> #includ ...

  10. Android手机端抓包方法

    抓包准备 1. Android手机需要先获得root权限.一种是否获得root权限的检验方法:安装并打开终端模拟器(可通过安卓市场等渠道获得).在终端模拟器界面输入su并回车,若报错则说明未root, ...