ORACLE —DML
DML语句:
数据操纵语句,针对的是数据,经过DML语句的操作,能够对数据源中的数据内容进行调整,包括数据的增加、删除、更新。
分类:
1.手动(FOR UPDATE)
2.自动 (依靠代码):
1)基于原表
并入
MERGE
2)不基于原表
增加 insert
删除 delete
修改 update
手动
语法:
SELECT * FROM TB_NAME FOR UPDATE;
--全局修改
SELECT * FROM TB_NAME WHERE CONDITION FOR UPDATE;
--部分修改
语句执行后,目标表的状态即由不可解锁转为可解锁状态,同时【提交】和【回滚】按钮开放,此时可以通过查询结果上方的小锁对表解锁,解锁后可直接在查询结果中进行修改,修改结束后点击绿色对勾✔表示修改完成,再点击小锁使表回到锁定状态,最后点击【提交】按钮使修改生效或点击【回滚】按钮取消刚才的修改。
优点:
1.操作简单;
2.可以同时满足增、删、改三方面的需求。
缺点:
1.所做操作不能留下痕迹,不方便后续回顾;
2.同时对大量数据操作时会有崩溃的危险;
3.必须依赖特定的数据库操作工具。
总结:
范围小、数据少、临时(非常规)
自动
INSERT
语法:
1.单条数据的插入-录入确定内容
INSERT INTO TB_NAME (COL_LIST)
VALUES (DATA_LIST);
2.多条数据的插入-插入查询结果
INSERT INTO TB_NAME (COL_LIST)
SELECT …;
语法1注意点:
1.该语法每次仅能插入
一条
数据;
2.指定插入的数据可与表结构在数量或顺序上不一致,此时字段列表必须与数据列表在列数、顺序、属性、内容上完全一致
,否则会报错;
3.若插入的数据在列数、顺序、属性、内容上与表结构完全一致,可在语句中省略字段列表;
4.相较于手动插入数据,语法1能够同时承受的数据插入会更多,但不会多出太多,且还是会有崩溃的危险。若数据量较多建议改到命令窗口执行且中间多穿插’【COMMIT; 】命令。
tips:
1.少量确定数据的临时插入;
2.程序中少量固定数据的频繁插入。
语法2注意点:
1.该语法能够支持
同时插入多条数据
,数据量的多少取决于后边的查询部分
;
2.插入数据的列数、顺序、属性、内容完全取决于查询部分;
3.指定插入的数据可与表结构在列数或顺序上不一致,此时字段列表必须与数据列表在列数、顺序、属性、内容上完全一致,否则会报错;
4.若插入的数据在列数、顺序、属性、内容上与表结构完全一致,可在语句中省略字段列表;
5.查询部分可以是完全独立的一部分,所有语法规则完全遵循查询的语法,也因为如此,该语法非常灵活,可通过改变查询部分来改变最终插入的数据。
如何查看表结构
1)通过
右键
菜单DESCRIBE
描述来查看
2)SELECT * 直接查询该表
3)通过右键菜单VIEW
查看和EDIT
编辑来查看表结构
4)在COMMAND WINDOW
中DESC TB_NAME
回车
5)在CMD窗口
中连接SQLPLUS DESC TB_NAME