1、海威技术培训研发中心,第四章 关系数据库语言SQL(3),海威,海威技术培训研发中心,本节内容,1 SQL的操作功能,2 SQL的定义功能,-insert,-update,-delete,-create table ,-drop table,-alter table,-create view ,海威技术培训研发中心,插入数据,格式1:insert into 表名(字段名,)values(值,),例:向仓库表中插入 ,值为,城市和面积,南京和450,insert into 仓库表(城市,面积)values(南京,450),注:若插入表中所有字段时,可省略各字段名。,例:往职工表中插入元组(WH7
2、,E7,1235),insert into 职工表 values(WH7,E7,1235),功 能:将给定的值插入到指定的表的指定字段中。,海威技术培训研发中心,插入数据,格式2:insert into 表名 from array 数组名,功 能:从指定的数组中插入记录值。,例:将查询职工表中的信息存入数组arr1中, 再将数组arr1中的内容插入表zg中。,select * from 职工表 into array arr1,insert into zg from array arr1,海威技术培训研发中心,更新数据,格式:update 表名 set 字段名=新字段值 where 条件注:无w
3、here 条件表示更新表中所有的记录,例:给WH1仓库的职工提高10%的工资,update 职工表 set where,工资=工资*1.1,仓库号=WH1,例:给所有仓库增加100m2的面积。,例:给低于所有职工平均工资的职工提高5%的工资,update set,仓库表,面积=面积+100,update 职工表 set 工资=工资*1.05 where 工资0 error面积应该大于0!default 100) create table 职工表1(仓库号 C(5),; 职工号 C(5) primary key,; 工资 I,; foreign key 仓库号 tag 仓库号 reference
4、s 仓库表1),表的定义举例:,海威技术培训研发中心,表的删除,格式:drop table 表名功能:物理删除表文件。,海威技术培训研发中心,非SQL语句修改表结构的命令是: modify structureSQL语句修改表结构的命令是: alter table,表结构的修改,海威技术培训研发中心,表结构的修改,增加字段修改字段(只能修改类型和宽度),alter table 表名 add column 字段名 类型(宽度),alter table 表名 alter column字段名 新类型(新宽度),例:为职工表增加年龄字段,alter table 职工表 add column 年龄 n(3
5、),例:将职工表的年龄字段修改为整型,alter table 职工表 alter 年龄 i,海威技术培训研发中心,重命名字段删除字段,alter table 表名 rename column原字段名 to 新名,alter table 表名 drop column 字段名,例:将年龄字段改为age,alter table 职工表 rename 年龄 to age,例:将职工表的age字段删除,alter table 职工表 drop column age,表结构的修改,海威技术培训研发中心,增加字段的同时,定义有效性规则。,alter table 表名 add 字段名 类型(宽度) ;chec
6、k error default ,例:为职工表增加年龄(整型)字段并设置有效性规则 及默认值,alter table 职工表 add 年龄 i check 年龄=0 ;error 错误的年龄 default 25,表结构的修改,海威技术培训研发中心,字段已经存在,设置或修改有效性规则。,alter table 表名 alter 字段名 set check error,alter table 表名 alter 字段名 set default ,例:为职工表的工资字段设置有效性规则及默认值,alter table 职工表 alter 工资 set check 工资=0 ; error 错误的工资,
7、alter table 职工表 alter 工资 set default 1000,表结构的修改,海威技术培训研发中心,表结构的修改,删除字段有效性,alter table 表名 alter 字段名 drop check,alter table 表名 alter 字段名 drop default,例:将职工表中年龄字段的有效性规则及默认值删除,alter table 职工表 alter 年龄 drop check,alter table 职工表 alter 年龄 drop default,海威技术培训研发中心,定义候选索引删除候选索引,alter table 表名 add unique 索引表
8、达式 tag 索引名,alter table 表名 drop unique tag 索引名,例:为职工表的职工号字段建立候选索引aa,alter table 职工表 add unique 职工号 tag aa,例:将职工表的候选索引aa删除,alter table 职工表 drop unique tag aa,表结构的修改,海威技术培训研发中心,视图的定义,视图是一个定制的虚拟表,不保存在磁盘,保存在数据库中视图是可以更新的。视图是根据表定义或派生出来的,依赖于表,不独立存在,create view view1 as select * from 学生表,create view view2 as
9、 select 职工号,工资,城市 ; from 职工表,仓库表 ; where 职工表.仓库号=仓库表.仓库号,格式:create view 视图名 as select ,从单个表派生出的视图,从多个表派生出的视图,海威技术培训研发中心,视图中的虚字段,例:定义一个视图,它包含职工号、月工资、年工资 3个字段。 creat view view3 as select 职工号, ; 工资 as 月工资,工资*12 as 年工资 from 职工表,视图的删除,格式:drop view 视图名,海威技术培训研发中心,重点、难点总结,1.SQL的操作功能 插入 更新 删除2.SQL的定义功能 (表结构的修改),海威技术培训研发中心,作业,把课本的例题操作两遍.插入一个新的供应商元组(S9,智通公司,沈阳)北京的所有仓库增加100平米的面积用命令为仓库表增加一个字段“职工人数”, 整型,同时为该字段设置有效性规则:职工人数=0,