DB DDL和DML

今天在用yearning 平台提交SQL时,突然看到一个熟悉的缩写,但是一时想不起来,哪个是哪个,记录一下:

DDL (Data Definition Language 数据定义语言)

  • create table
  • alter table
  • drop table
  • truncate table
  • create index
  • drop index

当执行DDL语句时,在每一条语句前后,oracle 都将提交当前的事务。如果用户使用insert 命令将记录插入到数据库后,执行一条DDL语句(如create table),此时来自insert 命令的数据将被提交到数据库。当DDL语句执行完成时,DDL语句会被自动提交,不能回滚

DML(Data Manipulation Language 数据操作语言)

  • insert 插入db 记录
  • update 修改db 记录
  • delete 删除db 记录

当执行DML命令如果没有提交,将不会被其他会话看到,除非在DML命令之后执行DDL命令或DCL命令,或用户退出会话,或终止实例,此时系统会自动发出commit 命令,使未提交的DML命令提交