数据的四个基本操作:增、删、改、查。之前我们把最大头的“查”学完了。现在我们一口气把其他的学完。
先来看看我的表:
Student表 sc表
1、增(insert)
用法:
insert into <TableName> (<columnName1>,<columnName2>,……)
values(<Value1>,<Value2>,……);
现在我们让阿天同学选一门课,课程编号为3,我们让他及个格打60分。
insert into sc values('1120161675','3','60')
结果如图:
那如果阿天同学选修了一门课,可是现在还没考试怎么办呢?我们来看一看,现在阿天同学选了7号课:
运行结果是这样:
我忘记了我以前设置了成绩不能为空,再来一次:
好,看来成功了。
查询结果:
上面的insert intosc values('1120161675','7',null)
等价于insert intosc(sno,cno) values ('1120161675','7')
2、更新(update)、删除(delete)
阿天同学惹火了7号课的老师,期末考试的时候老师给了他不及格:
update sc set Grade=('59')
where SC.Cno='7';
结果如图:
看到了阿天同学7号课就差一点就及格了,老师很开心。不过阿天同学找到了教务处,教务处决定把这次阿天的这次选课记录删除:
delete from SC whereCno='7'
结果如图:
更新与删除用法:
Update <TableName>set <列名=表达式>
Where <限定条件>
Deletefrom<TableName>
Where <限制条件>
*注意:delete删除的元组也就是一行,update更新一个元组的属性也就是一行中的一列
插入、修改、删除都可结合子查询,update\delete直接在where后用子查询,和我之前写的select用法差不多,我举一个insert的例子。
create table Demo( --创建一个表,
studentIdint not null primary key,
studentNamevarchar(50) not null,
avg_Gradeint
)
insert --进行插入
into Demo(studentId,studentName,avg_Grade)
select sc.Sno,studentName,avg(grade)
from sc,student wherestudent.studentId=Sno
group by sc.Sno,student.studentName
结果如图: