数据库原理及应用-孙浩军 第3章关系数据库SQL语言PartB

数据库原理及应用-孙浩军 第3章关系数据库SQL语言PartB

ID:40246627

大小:568.00 KB

页数:84页

时间:2019-07-29

数据库原理及应用-孙浩军 第3章关系数据库SQL语言PartB_第1页
数据库原理及应用-孙浩军 第3章关系数据库SQL语言PartB_第2页
数据库原理及应用-孙浩军 第3章关系数据库SQL语言PartB_第3页
数据库原理及应用-孙浩军 第3章关系数据库SQL语言PartB_第4页
数据库原理及应用-孙浩军 第3章关系数据库SQL语言PartB_第5页
资源描述:

《数据库原理及应用-孙浩军 第3章关系数据库SQL语言PartB》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、数据库原理及应用ThePrincipleofDatabaseandapplications第三章关系数据库SQL语言PartB3-4SQL的数据更新SQL中数据更新包括:插入数据修改数据删除数据3-4-1SQL数据插入插入数据就是向一个表插入一个或多个记录的过程。SQL中使用INSERT语句来完成数据插入功能。1.插入单条记录插入单条记录的INSERT语句的格式为:INSERTINTO<表名>[(<列名>[,<列名>…])]VALUES(<常量>[,<常量>…]);【例3.53】向Student表插入一条新的

2、学生信息,满足:学号为2006409001,姓名为李志,性别为男,年龄为18,所在系为CS。INSERTINTOStudent(StudentNO,Name,Sex,Age,Dept)VALUES('2006409001','李志','男',18,'CS');VALUES子句中的各个值之间要用“,”分开,并且要与表名后面的括号中所指出的属性的排列顺序一致。当要插入的新记录包含表中的所有属性值时,表名后面可以省略列名,例如上面的语句可以写成:INSERTINTOStudentVALUES('2006409001

3、','李志','男',18,'CS');【例3.54】向SC表插入一条选课记录,只知道学生的学号为2006409001,所选的课程号码为2,其他情况不详。INSERTINTOSC(StudentNO,CourseNO)VALUES('2006409001','2');对于新插入的记录,此记录对应于INTO子句所指出的列的取值为VALUES子句所指定的相同顺序的值,其他的未在INTO子句中指出的列,其取值为NULL。2.插入多条记录可以通过子查询将多条记录插入到一个表中。语句的格式为:INSERTINTO<表名

4、>[(<列名>[,<列名>…])]子查询;【例3.55】求每个选修了课程的学生的学号、姓名及其所修的总学分,并把结果存入一个新表StudentCredit中。首先创建一个新表StudentCredit:CREATETABLEStudentCredit(StudentNOCHAR(10),NameCHAR(20),CreditNumINT);然后使用INSERT语句:INSERTINTOStudentCredit(StudentNO,Name,CreditNum)SELECTStudent.StudentNO,

5、Name,SUM(Credit)FROMStudent,SC,CourseWHERESC.StudentNO=Student.StudentNOANDSC.CourseNO=CourseNOGROUPBYStudentNO,Name;3-4-2SQL数据修改SQL可以通过UPDATE语句对表中的记录进行修改。一般格式为:UPDATE<表名>SET<列名>=<表达式>[,<列名>=<表达式>]…[WHERE<条件>];SQL数据修改(续)1.修改单条记录【例3.56】把学号为2003409001的学生的年龄改为

6、23,所在系改为信息系。UPDATEStudentSETAge=23,Dept='IS'WHEREStudentNO='2003409001';2.修改多条记录【例3.57】把所有学生的年龄都增加1岁。UPDATEStudentSETAge=Age+1;SQL数据修改(续)3.带子查询的修改【例3.58】把信息系的全体学生成绩置零。UPDATESCSETGrade=0WHEREStudentNOIN(SELECTStudentNOFROMStudentWHEREDept='IS');这个修改操作还可以写成:U

7、PDATESCSETGrade=0WHERE'IS'=(SELECTDeptFROMStudentWHEREStudent.StudentNO=SC.StudentNO);3-4-3SQL数据删除SQL提供了DELETE语句去删除某个表中的一条或多条记录。值得注意的是,要区分开DELETE语句与DROP语句。DROP是数据定义语句,作用是删除表或索引的定义。当删除表定义时,连同表所对应的数据都被删除;DELETE是数据操纵语句,只是删除表中的某些记录,不能删除表的定义。DELETE语句的一般格式为:DELET

8、EFROM<表名>WHERE<条件>;SQL数据删除(续)1.删除单条记录【例3.59】删除学号为2003409001的学生记录。DELETEFROMStudentWHEREStudentNO='2003409001';2.删除多条记录【例3.60】删除所有教师信息。DELETEFROMTeacher;该操作删除了表Teacher中的所有记录,使其成为空表,但表的定义仍然存在。3.带子查询的删除【例

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。