zoukankan      html  css  js  c++  java
  • Oracle数据库——半期测验

    一、使用system用户登录SQL*PLUS,使用命令将scott用户解锁,并将scott用户的密码修改为: t_你的学号后三位(例如:t_165)。然后,以scott用户连接数据库。

    1. 使用system用户登录SQL*PLUS

     

    2.使用命令将scott用户解锁,并修改密码

    语句:

    ALTER USER scott ACCOUNT UNLOCK;

    alter user scott identified by t_051;

    conn scott;

     

    3.scott用户连接数据库。

     

    二、按照题目要求创建employees表和departments表,并给表中添加数据:

    (没有数据的用NULL

     

    创建 departments 表:

    列名

    数据类型

    列的说明

    depid

    integer

    部门编号(主键)

    depname

    char(12)

    部门名称

    depnote

    Varchar2(20)

    备注

    创建departments表的操作如下所示:

     

    创建 employees 表:

    列名

    数据类型

    列的说明

    empid

    char(6)

    员工编号(主键)

    empname

    char(12)

    员工姓名(非空)

    birthdate

    date

    出生日期

    depart

    integer

    所在部门编号(外键)(非空)

    salary

    Number(8,1)

    月薪

    position

    char(8)

    职务

    创建employees表的操作如下所示:

     

    departments表中添加数据:

    depid

    depname

    depnote

    1

    软件开发部

     

    2

    系统集成部

     

    3

    管理部

    包括人事财务管理

    departments表中添加数据的操作如下:

     

    查看添加数据后的表:

    22

    employees表中添加数据:

    empid

    empname

    birthdate

    depart

    salary

    position

    A00001

    王晓丽

    1980/4/27

    2

    2400

     

    A00003

    刘晴

    1982/9/12

    1

    2200

     

    A00004

    王明

    1972/3/14

    1

    4600

    经理

    A00007

    赵书生

    1978/12/15

    2

    2700

     

    A00009

    张蓝

    1981/10/6

    3

    3000

    副经理

    A00012

    王玲

    1985/5/8

    2

    1500

    文秘

    employees表中添加数据的操作如下:

     

    查看添加数据后的表:

     

    三、用SQL语句完成如下操作:

    1. 查询2号部门的所有员工的姓名、部门编号和月薪。

     

    2. 查询姓王的员工的编号和姓名

     

    3.查询每人月薪扣除1000元之后员工的信息。使用列别名‘税后薪水’。

     

     

    4. 查询月薪在20003000元之间的员工的姓名和月薪(使用between and

     

    5. 查询“软件开发部”和“管理部”的员工编号、姓名、所在部门编号。(注意:需要使用两张表)

     

    6. 查询除了经理、副经理之外的其他员工的信息。

    7.查询姓名是两个字的80后员工的信息。

     


    8. 查询position为空值的员工的个数

    9. 查询除了经理以外的其他员工的最高薪水

    select max(salary) from employees where position != '经理';

     

    10. 按部门分组,查询每个部门的员工个数

     

    11. 按部门分组,查询每个部门员工薪水的平均值。

     

    12. 将“软件开发部”的员工薪水增加10% (注意:需要使用两张表)

     

    13. 查询月薪低于本部门平均月薪的员工信息。

     

    14. 查询平均月薪高于3000元的部门编号、部门名称及其员工姓名、员工月薪、部门平均月薪。

     

    15. employees表中删除“管理部”的员工的信息。(注意:需要使用两张表)

     

    四、使用OEM完成如下操作:

    1、在OEM中按照题目要求创建表dept_你的学号后三位(例如:dept_165)

    注意:分步骤给出截图,每个约束的创建都要给出截图。

    列名

    数据类型

    列的说明

    dno

    integer

    系编号(主键约束)

    dname

    char(12)

    系名(唯一约束)

     

    建表:

     

    属性:

     

     

    添加主键约束:

     

    添加唯一约束:

     

     

    2、在OEM中按照题目要求创建表stu_你的学号后三位(例如:stu_165)

    注意:分步骤给出截图,每个约束的创建都要给出截图。

    列名

    数据类型

    列的说明

    sno

    integer

    学号(主键约束)

    sname

    Varchar2(20)

    姓名(非空约束)

    sage

    integer

    年龄(check约束:在12~99岁之间)

    sdep

    integer

    系编号(外键约束)

    1)建表:

     

    2)添加学号为主键约束

     

    3)添加姓名为非空约束

     

    4)添加年龄为check约束(在12~99岁之间)

     

    3)添加系编号为外键约束

      

     

     

  • 相关阅读:
    idea炫酷主题下载网站
    You have not concluded your merge (MERGE_HEAD exists)
    内部接口
    Nginx初尝试
    泛型和反射
    使用idea创建web项目
    <转>如果你报createSQLQuery is not valid without active transaction,请看这里
    android 通过pull解析xml文件
    shiro环境搭建
    springmvc文件上传
  • 原文地址:https://www.cnblogs.com/shenxiaolin/p/5514113.html
Copyright © 2011-2022 走看看