SQL****数据更新

数据更新有三种:插入,修改,删除

一·插入数据

  1. 插入元组(行)

INSERT

**Into <**表名>[(<属性列1><属性列2><属性列3><属性列4>)]

**Values(<**常量1><常量2><常量3><常量4>);

注:可以写也可以不用写,如果不写,则表示新元组要在所有表的列属性上都有指定值,并且次序与create table****次序相同,值与属性一定要一一对应。

例1:将学生张三信息插入学生表Student当中(原表属性顺序:学号,姓名,性别,年龄,所在院系)

Insert

Into Student

**Values(‘20205831’,’**张三’,’男’,’18’,’CS’);

例2:将一个新元组(学号:20205830,姓名:李东,性别:男,所在系列IS,年龄18)插入学生表Student中

Insert

Into Student(Sno,Sname,Ssex,Sdept,Sage)

Values (‘20205830’,’李东’,’男’,’IS’,’18’);

注:在新增元组中指定了哪些属性要赋值,属性顺序可以不与create table 相同,但是后面赋值一定要与自己指定的属性一一对应。

若新增加元组只插入部分列属性,则其他列属性自动赋予空值

例3:插入一条选课记录(‘20205832’,’1’)表SC属性次序为(Sno,Cno,grade)

第一种:

**Insert
into SC (Sno,Cno) /***表明要赋值得属性*/

Values (‘20205832’,’1’);

其他属性值自动赋值为空

第二种:

Insert
into SC

Values (‘20205832’,’1’,’NULL’);

没有指出赋值属性,所以在其他属性上明确的赋值NUL

  1. 插入子查询结果

Insert

**Into<**表名>[(<属性列1><属性列2><属性列3><属性列4>)]

子查询;

例1:对每一个系,求学生平均年龄,并把结果放入数据库中

首先在数据库中建立一个新表,其中一列放系名,另一列放平均年龄

Create table Dept_age

(Sdept char(15),

Avg_age smallint);

然后对表Student按系分组,再把系名和平均年龄存入新表中

Insert

Into Dwpt_age(Sdept,Avg_age)

Select Sdept,AVG(Sage)

From Student

Group by Sdept;

二.数据修改(更新)

**Update <**表名>

**Set <**列名>=<表达式>[,<列名>=<表达式>]

**[Where <**条件>]

功能是修改指定表中where子句条件中的元组,其中set语句中<表达式>的值用于取代相应的属性列值。如果省略where子句,则表示修改所有元组的值

修改一个元组的值

例1:将学生201215121的年龄改成22岁

Update student

Set Sage=22

Where Sno=’201215121’;

修改多个元组的值

例2:将所有学生的年龄增加一岁

Update Student

Set Sage=Sage+1;

带子查询的修改语句

例3:将计算机系全体学生成绩归0

Update SC

Set grade=0

Where Sno(

Selete Son

From Student

Where Sdept=’CS’);

三:删除

Delete

**From<**表名>

**[where <**条件>]

功能从指定表中删除满足where子句条件的所有元组,如果没有where则删除表中的所有数据

例1:删除学号201215128的学生记录

Delete

From Student

Where Sno=’201215128’;

例2;删除表STUSENT所有数据

Delete

From STUDENT;

例3:删除计算机系所有学生的选课记录

Delete

From SC

Where Son in(

Selete Sno

From Student

Where Sdept=’CS’);

先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦

更多推荐

SQL 数据更新