# 数据更新
数据表是数据库的重要对象,是存储数据的基本单元,表结构创建完成后就涉及向表中插入新的数据,以及对已有数据进行修改与删除,这就是数据更新,数据更新可以使用“对象资源管理器”和T-SQL语句两种方式实现。也就是说,数据更新是以新数据项或记录、替换数据文件或数据库中与之相对应的旧数据项或记录的过程,通过删除、修改、再插入的操作来实现。
# 定义
数据表是数据库的重要对象,是存储数据的基本单元。表结构创建完成后就涉及向表中插入新的数据,以及对已有数据进行修改与删除,这就是数据更新。数据更新可以使用“对象资源管理器”和T-SQL语句两种方式实现。 [1]
SQL语言的数据更新功能保证了DBA或数据库用户可以对已经建好的数据库进行数据维护。 [2]
数据更新(data revision)是以新数据项或记录、替换数据文件或数据库中与之相对应的旧数据项或记录的过程。通过删除一修改一再插入的操作来实现。是地理信息系统建立地理数据的时间系列,满足动态分析的前提。遥感数据因具多时相和快速获取的特点,是地理信息系统进行专题数据更新的重要来源和基础。实现这一过程的条件,是遥感影像数据几何精度和分类精度的有效改善,同时还要建立遥感数据处理系统与地理信息系统之间的系统接口,提高不同数据结构、数据转换的精度与效率。
数据更新包括数据的插入、修改、删除三类操作。
# 数据插入
SQL数据插入一般有两种格式,一种是单行数据插入,一种是子查询结果插入。关键词是INSERT。
单行数据插入
1.单行数据插入的一般形式为:
INSERT INTO 表名(列名1,列名2,…,列名n)
VALUES(常量1,常量2,…,常量n)
其中:表名为要插入数据的目录表;在新记录中,列名1的值是常量1,列名2的值是常量2,…,列名n的值是常量n。INTO子句中没有出现的目录表属性列额,在新数据中,将默认为空值。
注意:当VALUES子句中的常量结构(包括顺序和数据类型)和目录表的结构一样的时候,可以省略INTO子句中的列名。
2.实例
例1:将一条新课程记录(课程编号:03-01;课程名称:操作系统;学时:48;学分:3;学期:4;教师编号:X401055;教室:20303)插入到课程表中。
INSERT INTO 课程表
VALUES ('03-01','操作系统',48,3,'4','X401055','20303')
此时可以省略INTO子句中的列名。
例2:将一条新成绩记录(学号:040101;课程编码:03-01)插入到成绩表中。
INSERT INTO 成绩表(学号,课程编码)
VALUES ('040101','03-01')
此时不可以省略INTO子句中的列名
子查询结果插入
1.数据插入也可以将子查询结果及多条数据记录批量插入目标录。一般格式如下:
INSERT INTO 表名(列名1,列名2,…,列名n)
子查询
2.实例
例:对每一门课程求平均成绩,并把结果放入目标表,即PJ(课程编号,平均成绩)。
INSERT INTO PJ (课程编号,平均成绩)
SELECT 课程编号,AVG(成绩)
FROM 成绩表
GROUP BY 课程编号