<p>一、DML<br>
DML(data manipulation language)数据操纵语言:<br>
就是我们最经常用到的 SELECT、UPDATE、INSERT、DELETE。 主要用来对数据库的数据进行一些操作。 <br>
SELECT 列名称 FROM 表名称 UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值 INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....) DELETE FROM 表名称 WHERE 列名称 = 值<br>
二、DDL<br>
DDL(data definition language)数据库定义语言:<br>
其实就是我们在创建表的时候用到的一些sql,比如说:CREATE、ALTER、DROP等。DDL主要是用在定义或改变表的结构,数据类型,表之间的链接和约束等初始化工作上 <br>
复制代码<br>
CREATE TABLE 表名称<br>
(<br>
列名称1 数据类型,<br>
列名称2 数据类型,<br>
列名称3 数据类型,<br>
....<br>
) ALTER TABLE table_name ALTER COLUMN column_name datatype DROP TABLE 表名称 DROP DATABASE 数据库名称<br>
复制代码<br>
三、DCL<br>
DCL(Data Control Language)数据库控制语言:<br>
是用来设置或更改数据库用户或角色权限的语句,包括(grant,deny,revoke等)语句。这个比较少用到。 </p>
<p>在公司呢一般情况下我们用到的是DDL、DML这两种。<br>
DDL (Data Definition Language 数据定义语言)</p>
<p>数据定义语言,用于定义和管理 SQL 数据库中的所有对象的语言</p>
<p>1<br>
2<br>
3<br>
4<br>
5<br>
6<br>
create table 创建表 <br>
alter table 修改表 <br>
drop table 删除表 <br>
truncate table 删除表中所有行 <br>
create index 创建索引 <br>
drop index 删除索引<br>
当执行DDL语句时,在每一条语句前后,oracle都将提交当前的事务。</p>
<p>如果用户使用insert命令将记录插入到数据库后,执行了一条DDL语句(如create table),此时来自insert命令的数据将被提交到数据库。</p>
<p>当DDL语句执行完成时,DDL语句会被自动提交,不能回滚。 </p>
<p>DML (Data Manipulation Language 数据操作语言) </p>
<p>1<br>
2<br>
3<br>
insert 将记录插入到数据库 <br>
update 修改数据库的记录 <br>
delete 删除数据库的记录<br>
当执行DML命令如果没有提交,将不会被其他会话看到。</p>
<p>除非在DML命令之后执行了DDL命令或DCL命令,或用户退出会话,或终止实例,此时系统会自动发出commit命令,使未提交的DML命令提交。</p>
<p>总结下二者区别:</p>
<p>DML是SELECT、UPDATE、INSERT、DELETE,就象它的名字一样,这4条命令是用来对数据库里的数据进行操作的语言。</p>
<p>DDL比DML要多,主要的命令有CREATE、ALTER、DROP等,DDL主要是用在定义或改变表(TABLE)的结构,数据类型,表之间的链接和约束等初始化工作上,他们大多在建立表时使用。<br>
</p>