• SQL语句常见视图操作部分试题(一)


    创建一个名称为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);

  • 相关阅读:
    centos Cannot allocate memory for the buffer pool
    hive query with field is json
    doubleclick video notes
    shell command
    最简单好用的免费录屏软件
    mysql export query result
    浏览器-前端网络
    vue-main.js中new vue()的解析
    webpack-从零搭建vuecli环境
    【js重学系列】call-apply-bind
  • 原文地址:https://www.cnblogs.com/kawashibara/p/8962415.html
Copyright © 2020-2023  润新知