Oracle数据库实验报告四使用SQL进行数据操作

实验四 使用SQL进行数据操作

-by QQC from BTBU

【实验目的】
掌握INSERT、UPDATE与DELETE的使用。
【实验内容】
1.用hr用户连接数据库后,设置为非自动提交方式,并设置一保留点。

此处有坑,你最后就知道了哈哈

用hr用户连接数据库后,设置为非自动提交方式,并设置一保留点。

2.手动为COUNTRIES表添加一些数据,例如(RU,Russia,1)。

提示:insert

手动为COUNTRIES表添加一些数据,例如(RU,Russia,1)
手动为COUNTRIES表添加一些数据,例如(RU,Russia,1)

3.新建表PERSON(EMPLOYEE_ID,NAME,EMAIL,PHONE_NUM,LOCATION),表中数据从表EMPLOYEES中提取,条件是LAST_NAME以S开头,NAME为FIRST_NAME与LAST_NAME的合并,LOCATION列以NULL填充。

提示:用子查询创建
新建表PERSON(EMPLOYEE_ID,NAME,EMAIL,PHONE_NUM,LOCATION),表中数据从表EMPLOYEES中提取,条件是LAST_NAME以S开头,NAME为FIRST_NAME与LAST_NAME的合并,LOCATION列以NULL填充。
在这里插入图片描述

4.将表JOB_HISTORY中的END_DATE列的值均改为今天。

提示:update
将表JOB_HISTORY中的END_DATE列的值均改为今天

5.在EMPLOYEES表中,将雇用时间在2000年以前的员工的工资上调300。

提示:update
在EMPLOYEES表中,将雇用时间在2000年以前的员工的工资上调300

6.用MERGE命令,将EMPLOYEES表中剩余的员工补充到表PERSON中。

提示:merge 不清楚看教程,或百度查询 oracle merge
用MERGE命令,将EMPLOYEES表中剩余的员工补充到表PERSON中

7.删除PERSON中,所有NAME以B开头的员工的记录。

提示:delete 满足条件删除

删除PERSON中,所有NAME以B开头的员工的记录

8.用TRUNCATE清空PERSON表。

提示:truncate 无条件清空表记录
用TRUNCATE清空PERSON表

9.撤销所有操作到第一步设置的保留点。

这步其实是我在这里重新创建了一个保留点然后rollback的,最上面的保留点在上一步已经无了,具体原因如下提示。

撤销所有操作到第一步设置的保留点

提示
delete语句是DML语言,这个操作会放在rollback segement中,事物提交后才生效;如果有相应的触发器(trigger),执行的时候将被触发。
truncate、drop是DDL语言,操作后即生效,原数据不会放到rollback中,不能回滚,操作不会触发trigger。

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AQ_No_Happy

你的满意是我的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值