文档详情

SQL server2000的使用 表的编辑.ppt

发布:2017-02-03约3.09千字共24页下载文档
文本预览下载声明
表的编辑 格式如下: ALTER TABLE 表名 {ADD 列说明 |DROP COLUMN 列名 |ALTER COLUMN 列说明 |ADD 约束说明 |DROP 约束 } 使用ALTER TABLE语句可以完成以下操作: 1.增加列. 2.删除列. 3.修改列. 4.增加约束. 5.删除约束. 例1:增加列定义 在课程表中增加一列,列名为”上课地点”,类型为字符,长度为20, 允许为空值,则使用下列SQL语句: ALTER TABLE 课程表 ADD 上课地点 CHAR(20) 例2:更改列定义 假设要把学生基本表中姓名由8个字符改为20个字符,则使用下列SQL语句. ALTER TABLE 学生基本表 ALTER COLUMN 姓名 CHAR(20) NOT NULL 例3:删除列 将课程表中”上课地点”列删除,则使用下列SQL语句: ALTER TABLE 课程表 DROP COLUMN 上课地点 例4:增加约束 在学生基本表中增加约束”CK_日期限制”,要求入学日期必须大于等于出生日期加上16年,即年满16岁才可以入学,使用下列SQL语句: ALTER TABLE 学生基本表 ADD CONSTRAINT CK_日期限制 CHECK (入学日期=DATEADD(YEAR,16,出生日期)) 例5:删除约束 在学生基本表中删除约束,使用下列SQL语句: ALTER TABLE 学生基本表 DROP CONSTRAINT CK_日期限制 删除表 当删除表时,则该表的定义和数据及与该表相关的数据库对象(如索引、约束等)都被删除。如果要删除的表被其他表外键约束,则该表不允许删除。例如,在没有删除成绩表的情况下,不能删除学生基本表。 DROP TABLE 表名 例:删除职工表 DROP TABLE 职工表 插入数据 INSERT 语句 把一行或者多行数据插入到表中。这个语句有如下两个基本功能。 把所有数据插入到表中。 把从其他表中选择的数据插入到表中。 插入一行数据 INSERT INTO 表名 [列名表] VALUES(对应列的值表 ) 其中: 〈表名〉是要插入数据的表名。 〈列名表〉这是一个可选项,它说明要插入数据值的列名的列表。 〈对应列的值表〉这是按照表定义或者〈列名表〉所规定次序的列值表。 例如:使用INSERT语句往课程表中插入一行数据。 INSERT INTO 课程表 VALUES(‘C001’,‘英语’,‘胡小雨‘) 如果出错,说明违背了 在“课程表”中通过课程号来唯一标识每一个数据行的约束。 修改INSERT语句如下: INSERT INTO 课程表 VALUES(’C002‘,‘高等数学’,‘李波’) 例: INSERT INTO 课程表 VALUES(‘T001’,‘程序设计概念’,NULL) 说明对上课教师无法确定的人,可以用NULL 2.插入多行数据 在INSERT语句中,使用子查询可以实现一次插入多行,实际上把子查询的结果作为数据行插入到表中,其语句简明语法格式如下: INSERT INTO 表名 [(列名表)]子查询 其中: 表名是要插入数据的表名. 列名表这是一个可选项,它是要插入数据值的列名的列表. 子查询这是一个查询语句(SELECT). 插入操作的异常情况 当使用INSERT语句插入数据时,会出现一些异常情况.对于初学者,常常出现的一次情况如下: 插入数据的个数多于列的个数. 提供数据的类型与列类型不兼容. 插入数据时违背了约束. 修改数据 1.使用UPDATE语句 使用该语句修改已经存在的数据. 格式如下: UPDATE 表名 SET 列=值[,列=值] [WHERE 条件] 其中: 表名是要修改数据的表名. 列是要修改数据的列名. 值是修改之后的新列值. 条件是被修改数据行的条件. 例如:修改一列数据. 把课程号为C001的上课教师由胡小雨改为胡大雨老师. UPDATE 课程表 SET 上课教师=‘胡大雨’ WHERE 课程号=‘C001’ 把学生赵六的奖学金从500元调整为1500元. UPDATE 学生基本表 SET 奖学金=1500 WHERE 姓名=‘赵六’ 例:按照平时成绩占30%、考试成绩占70%。 UPDATE 成绩表 SET 总成绩=平时成绩*0.3+考试成绩*0.7 如果没有平时成绩,则按照考试成绩作为总成绩,使用SQL语句: UPDATE 成绩表 SET 总成绩=考试成绩 WHERE 平时成绩 IS NULL 如果没有平时成绩,也没有考试成绩,则总成绩为空,则使用SQL语句: UPDATE
显示全部
相似文档