Oracle入门学习系列笔记(二)之数据定义语言(DML)

7 篇文章 0 订阅
6 篇文章 0 订阅

Oracle入门学习系列笔记(二)之数据定义语言(DML)


说明: 本文档为本人学习Oracle过程中整理的相关笔记,供大家学习时参考,如有不妥之处,请大家指正

介绍

数据定义语言,英文全称为:Data Manipulation Language,简称为:DML,用于改变表中的数据;和事务相关,执行完后需要经过事务控制语句提交后才真正的将改变应用到数据库中

主要包括:

  • INSERT: 将数据插入到数据库表中
  • UPDATE: 更新数据库表中已经存在的数据
  • DELETE: 删除数据库表中的数据
DML数据操作语言
INSERT
UPDATE
DELETE
将数据插入到数据库表中
更新数据库表中已经存在的数据
删除数据库表中的数据

INSERT 语句

  • 语法:

INSERT INTO tableName [(column[,colume])] VALUES (value[,value])

  • 作用: 向数据库表中插入一条记录
  • 例如: 向学生信息表中插入一条数据,使用如下语句

insert into david.stu_inf (ID,STU_NME,SEX,FEE,BIR_DATE,PHONE_NO) values (1002,'李翠花','F',3100.00,to_date('2002-07-15','YYYY-MM-DD'),'15989990000');
commit;
  • 列名也可以省略不写,不过要按照列的顺序将相应的数据类型的值插入,使用下面的语句:

insert into DAVID.STU_INF values (1001,'张晓军','M',3000.00,to_date('2001-03-25','YYYY-MM-DD'),'13899990000');
commit;
  • 说明:
    • 1.在执行插入操作时,列名可以不用指定,但是此时必须按照数据库表中列的顺序插入相应类型的合法的值,方能成功执行;严格来说建议采用指定列名的方式来执行插入操作
    • 2.上面的两条sql语句中,针对日期类型的插入使用了to_date函数,这种在我们以后的操作中也建议使用此种方式,方面我们插入指定格式的日期参数

UPDATE 语句

  • 语法:

UPDATE tableName SET column=value[,column=value]…
[WHERE condition]

  • 作用: 更新数据库表中已经存在的数据
  • 例如: 将学生信息表中的ID为1002的学生的学费更新为3000元,则使用如下的语句

UPDATE DAVID.STU_INF SET FEE=3000.00 WHERE ID=1002;
commit;
  • 说明: WHERE 子句可以不带,但是不包含WHERE子句的更新表示全表的数据都要更新,所以这里建议根据所需的指定的条件去更新数据库表

DELETE 语句

  • 语法:

DELETE [FROM] tableName [WHERE condition];

  • 作用: 删除表中的记录
  • 例如: 删除学生信息表中ID为1002的学生的学生信息,则使用如下的语句

DELETE DAVID.STU_INF WHERE ID=1002;
commit;

  • 说明:
    • 1.FROM关键字可以不用包含
    • 2.WHERE 子句可以不带,但是不带WHERE子句表示要将 全表的数据删除,这里一定要慎重!!!

说明:DML数据操作语言和事务相关,所以在执行完语句之后,需要将事务提交,方能将数据更改应用到数据库中,在本文档中每执行一次的DML都执行了一次commit操作


DELETE和TRUNCATE语句

  • 联系: DELETE语句和TRUNCATE语句两者都具有删除表数据的作用
  • 区别:
    • 1.DELETE是DML语句,可以回退;而TRUNCATE是DDL语句,立刻生效,不能回退
    • 2.DELETE可以有条件的删除,TRUNCATE只能将全表的数据删除
    • 3.如果是删除全表的数据,且数据量大时,TRUNCATE的执行效率比DELETE要高,建议采用

如果你觉得本笔记对你有帮助,请扫码给予支持,金额随意

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Jack_David

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值