Oracle 增删改(INSERTDELETEUPDATE)语句
Posted Abeam
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle 增删改(INSERTDELETEUPDATE)语句相关的知识,希望对你有一定的参考价值。
Ø 简介
本文介绍 Oracle 中的增删改语句,即 INSERT、DELETE、UPDATE 语句的使用。是时候展现真正的技术了,快上车:
1. 插入数据(INSERT)
2. 修改数据(UPDATE)
3. 删除数据(DELETE)
4. 使用 MERGE INTO 语句完成增删改操作
5. 回滚(rollback)的使用
6. 注意事项
1. 插入数据(INSERT)
u 语法:
INSERT INTO TABLE_NAME [(column1[, column2, …]] VALUES(value1[, value2, …]);
说明:
1) INSERT 数据时可以指定列名,也可不指定列名。如果不指定列名,必须为每一列都提供数据,并且顺序必须与列名的顺序一致;如果指定列名,提供的数据需要与指定的列名顺序一致;
2) 插入数据时数字类型的列可直接写入,字符或日期类型的列需要加单引号;
3) 插入的数据必须满足约束规则,主键和 NOT NULL 的列必须提供数据。
u 插入数据的方式
1) 首先,可以在 PL/SQL Developer 中使用 FOR UPDATE 语句
1. 首先执行 SELECT 语句
SELECT * FROM Table01 FOR UPDATE;
2. 点击锁表按钮
3. 编辑数据 -> 记入改变 -> 表解锁按钮
4. 最后点击提交
l 说明:低版本的 PL/SQL Developer 操作与以上类似。
2) 使用 INSERT INTO 语句,插入一条数据
INSERT INTO Table01(Id, Name) VALUES(2, \'李四\'); --指定所有列
COMMIT; --必须执行提交命令
提示:在平常开发中,建议显示指定插入的列名,有助于提高代码的可读性。
INSERT INTO Table01(Id) VALUES(3); --指定部分列,其他未指定的列表必须可以为空(即 NULL)
COMMIT;
INSERT INTO Table01 VALUES(4, \'王五\'); --不指定任何列,必须按顺序插入所有列
COMMIT;
3) 使用 INSERT INTO SELECT 语句,插入多条数据
INSERT INTO Table02 SELECT * FROM Table01; --将 Table01 中的所有数据插入 Table02 中(注意:可以指定插入的列;Table02 必须存在;可指定 Table01 的查询条件)
COMMIT;
4) 另外,还可以使用 PL/SQL Developer 中使用变量的方式(该方式不怎么实用,不做详细介绍)
INSERT INTO Table01 VALUE(&Id, &Name);
5) 同时插入多条(支持多表插入)
INSERT ALL
INTO Table01 VALUES(10, \'张10\')
INTO Table01 VALUES(11, \'张11\')
INTO Table02 VALUES(20, \'李20\') --java:Oracle(table的增删改查,data的增删改查)