说明

    使用SSMS界面方式进行数据的添加修改删除操作比较简单,因此只在此进行介绍,内容分主要使用SQL方式讲解。
    展开“数据库”,打开相应的数据库,然后再展开“表”,,右击需要操作的数据表,选择“编辑前200行”,进入表数据编辑面板,就可以对表中的数据进行添加、修改和删除操作了。
在这里插入图片描述
需要说明的是,如果对数据进行修改,需要右击,点击“执行SQL”
在这里插入图片描述

添加数据

    SQL数据插入语句INSERT通常有三种形式,插入一个元组,插入多个元组,还有一种是通过插入子查询结果来插入多个元组。
1.插入一个元组
语法格式:

INSERT
INTO <表名> [(<属性列1>[,<属性列2>]...)]
VALUES(<常量1>[,<常量2>]...)

在INTO子句中指出需要插入数据的表名,属性列表是可选的,如果写了属性列表,则是指出了新增加的元组在哪些属性上要赋值,属性的顺序可以跟数据表的顺序不一样。VALUES子句对新元组的各属性赋值,字符串常数以及日期时间要用单引号括起来。如果只指出了表名,没有指出属性名,那么新元组要在表的所有属性列上都指定值,并且需要注意值与属性列要一一对应。如果赋值的常量为空,那么需要明确给出空值。
例如:
数据表class结构如下:
在这里插入图片描述
可以使用如下方式插入:

use schoolDB
go
insert into class(ClassID,ClassName,SchoolID)
values(101,'软件1班',null)

或者

use schoolDB
go
insert into class
values(102,'软件2班',1)

在这里插入图片描述
表中的数据:
在这里插入图片描述


2.插入多个元组
语法格式:

INSERT
INTO <表名> [(<属性列1>[,<属性列2>]...)]
VALUES(<常量1>[,<常量2>]...),
	  (<常量1>[,<常量2>]...),
	  (<常量1>[,<常量2>]...)

示例代码:

use schoolDB
go
insert into class
values(103,'软件3班',null),
(104,'软件4班',1)

或者

use schoolDB
go
insert into class(ClassID,ClassName,SchoolID)
values(105,'软件5班',null),
(106,'软件6班',1)

3.通过子查询插入元组
语法格式:

INSERT
INTO <表名> [(<属性列1>[,<属性列2>]...)]
子查询

示例代码:

use schoolDB
go
create table class_total  --创建一个班级数量统计表,统计学校的班级数
(
	SchoolName int not null,
	ClassNum int not null
)
go
--子查询
insert into class_total(SchoolName,ClassNum)
select school.SchoolID,COUNT(class.ClassID)
from school,class
where school.SchoolID=class.SchoolID
group by school.SchoolID

执行代码后:
在这里插入图片描述
class_total数据:
在这里插入图片描述
class表数据:
在这里插入图片描述



修改数据

语法格式:

UPDATE <表名>
SET <列名>=<表达式>[,<列名>=<表达式>]...
[WHERE <条件>]

修改操作也叫更新操作,其功能是修改指定表中满足WHERE子句条件的元组。其中SET子句给出<表达式>的值用于取代相应的属性列值。如果省略WHERE子句,则表示要修改表中的所以有元组。

示例:

use schoolDB
go
update class
set ClassName='哈哈哈啊哈',SchoolID=1
where ClassID=102

运行:
在这里插入图片描述
结果:
在这里插入图片描述


删除数据
DELETE
FROM <表名>
[WHERE <条件>]

DELETE语句的功能是从指定表中删除满足WHERE子句条件的所有元组。如果省略WHERE子句则表示删除表中的全部元组,但表的定义仍在字典中。
示例:

use schoolDB
go
delete
from class
where ClassID=102

运行:
在这里插入图片描述
结果:
在这里插入图片描述



Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐