DDL、DML介绍及常用语句

一、介绍

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

    DDL用于操作对象和对象的属性,这种对象包括数据库本身,以及数据库对象,像:表、视图等等,DDL对这些对象和属性的管理和定义具体表现在Create、Drop和Alter上。特别注意:DDL操作的“对象”的概念,”对象“包括对象及对象的属性,而且对象最小也比记录大个层次。以表举例:Create创建数据表,Alter可以更改该表的字段,Drop可以删除这个表,从这里我们可以看到,DDL所站的高度,他不会对具体的数据进行操作。

  • DML(Data Manipulation Language 数据操控语言)

    DML用于操作数据库对象中包含的数据,也就是说操作的单位是记录。常见操作就是对数据的增删改查。

二、常用语句

  • DDL常用语句
1. 修改表:alter table

1.1 新增表字段

	-- 新增一个字段
	ALTER TABLE tableName ADD COLUMN path_detail varchar comment '描述';
	-- 新增多个字段
	ALTER TABLE tableName 
	ADD COLUMN path_detail varchar comment '各路径节点详细信息',
	ADD COLUMN standard_time int comment '标准时效,12、24、36...120';
	-- 在某字段之后增加一个字段
	alter table tableName add column fild varchar(20) nou null after tableB
	-- 增加字段,并把该字段放到表的最前面
	alter table tableName add column fild varchar(20) nou null first



1.2 修改表名称

	RENAME TABLE People TO Users;
2. 删除表
// 截断表 (清空表中的所有数据,包括此时表自增id的步数)
truncate table tableName;
// 删除表数据
DELETE FROM tableName;
// 删除表空间(包括表结构、数据)
drop table tableName;
  • DML常用语句
1. 插入数据

1.1 为表的所有字段插入记录

insert into table_name  values (value_list);

1.2 为表的指定字段插入数据

insert into table_name (column_list) values (value_list);

1.3 批量插入数据(比一条一条地插入效率高)

insert into table_name (column_list) values (value_list1),(value_list2);

1.4 将查询结果插入到表中(不用values关键字

insert into table_name1 (column_list1) select (column_list2) from table_name2 where (condition);

column_list1需要和column_list2的字段个数相同,数据类型相同。

2. 修改数据

2.1 按条件更新数据

update table_name 
set column_name1 = value1, 
	column_name2 = value2 
where (condition);

更新多个字段使用逗号分隔,无需使用多个set关键字

2.2 按其他字段值,更新本字段值

UPDATE users
SET age = CASE id
WHEN 1 THEN
11
WHEN 2 THEN
22
WHEN 3 THEN
33
ELSE
50
END;

当id为1时更新age为11;当id为2时,更新age为22
再看个更灵活的:case后面直接跟when

UPDATE users
SET age = CASE
WHEN id = 1 THEN
2
WHEN id > 2 THEN
50
END;

如果没有else,匹配不到条件时,更新的值即为null。

3. 删除数据

3.1 删除表中的数据

delete from table_name where (condition);

3.2 截断表(直接删除原来的表并创建一个结构相同的新表)

truncate table table_name;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章