9. 数据库更新操作

数据库的主要操作分为两种

查询操作:SELECT

更新操作:INSERT、DELETE、UPDATE

此时为保存原始的emp表的信息,在进行增加、修改、删除操作之前,先将此表复制一份

 

此语句执行之后会将表结构和数据完整的复制出来。下面进行增删改操作。

1)添加数据

语法:INSERT INTO 表名称[字段名称1,字段名称2,…] VALUES(值1,值2,…);

范例:为myemp表中添加一条新的记录,注意数字不用加单引号,但是字符串要加。

推荐做法:

Oracle从零开始08——SQL语句07——数据库更新操作 _Oracle

简略写法(并不推荐,只能用于添加所有字段的内容,才可以不写上任何字段的名称,制药值的数量和顺序与数据表中的一致即可):

Oracle从零开始08——SQL语句07——数据库更新操作 _数据库_02

范例:要求插入新雇员,但是他没有领导,没有奖金

第一种做法:不明确的写出要插入的字段

Oracle从零开始08——SQL语句07——数据库更新操作 _数据库_03

第二种做法:如果插入时没有明确的写出字段名称,使用null表示其具体内容in

Oracle从零开始08——SQL语句07——数据库更新操作 _从零开始_04

之前插入数据的时候,日期的格式时使用了表中固定好的一种格式,如果现在要使用"2009-01-06"的日期格式,怎么办?

使用TODATA函数

Oracle从零开始08——SQL语句07——数据库更新操作 _从零开始_05

2)修改数据

修改全部,法:INSERT 表名称 SET要修改的字段=新值,要修改的字段=新值,…;

也可修改局部,但是从一般的开发角度上讲,修改一般都要加入修改条件

范例:将myemp表中的所有雇员的佣金改为1000(修改全部)

UPDATE myemp SET comm=1000;

范例:将编号为7899的雇员的工资修改为5000(修改局部)

    UPDATE myemp SET comm=5000 WHERE empno=7899;

范例:将编号为7899的雇员的领导取消

    UPDATE myemp SET mgr=null WHERE empno=7899;

范例:将编号为7369、8899、7788的雇员的领导及奖金取消

    UPDATE myemp SET comm=null, mgr=null WHERE empno IN(7369,8899,7788);

 

3)删除数据

删除全部:DELETE FROM 表名称

删除局部:DELETE FROM 表名称 WHERE 删除条件

范例:删除编号是7899的一条信息

DELETE RFOM myemp WHERE empno=7899;

范例:删除编号是8899、7889、8889的雇员信息

    DELETE FROM myemp WHERE empno IN(8899,7889,8889);

范例:删除所有领取奖金的雇员

    DELETE FROM myemp WHERE comm. IS NOT NULL;

范例:删掉整表

DELETE FROM myemp;

但是这种方法开发中不建议使用,基本上都要指定删除条件。