上机练习3

、    将一个新学生记录(学号:;姓名:陈冬;性别:男;所在系:信息系;年龄:20岁)插入到Student表中;
ALTER TABLE Student
ADD Sage DECIMAL(,); UPDATE Student
SET Sage=YEAR(getdate())-DATENAME(yyyy,Sbirth); INSERT INTO Student(Sno,Sname,Sgender, Sdept,Sage)
VALUES('','陈冬','男','信息系','') ; 、 重复执行上述1操作,观察执行结果并分析原因;
消息2627,级别14,状态1,第4 行
违反了PRIMARY KEY 约束'PK_Student'。不能在对象'dbo.Student' 中插入重复键。
语句已终止。
无法执行,因为Sno是主码,主码必须是唯一的,而之前的操作已经插入了主码为0100的学生的信息。 、 新增一条选课记录(学号:;课程号:);
INSERT INTO Score(Sno,Cno)
VALUES('',''); 、 统计每个系学生的平均年龄,并把结果存入数据库;
建新表
CREATE TABLE Dept_age(Sdept CHAR(), Avg_age SMALLINT);
存入数据
INSERT INTO Dept_age(Sdept,Avg_age)
SELECT Sdept,AVG(Sage)
FROM Student
GROUP BY Sdept; 、 将信息系所有学生的年龄减小1岁;
UPDATE Student
SET Sage=Sage-
WHERE Sdept='信息系'; UPDATE Student
SET Sage=Sage-
WHERE Sno IN
(SELECT Sno
FROM Student
WHERE Sdept='信息系'
); 、 将选修了课程号为2的学生的成绩减去2分;
UPDATE Score
SET Cscore=Cscore-
WHERE Cno=''; 、 将信息系全体学生的成绩清零;
UPDATE Score
SET Cscore=
WHERE Sno IN
(SELECT Sno
FROM Student
WHERE Sdept='信息系'); 、 删除学号为0100的学生记录;
DELETE
FROM Student
WHERE Sno=''; 、 删除2号课程的所有选课记录;
DELETE
FROM Score
WHERE Cno=''; 、 删除所有的学生选课记录;
DELETE
FROM Score; 、 删除信息系所有学生的选课记录。
DELETE F
ROM Score
WHERE Sno IN
(SELECT Sno
FROM Student
WHERE Sdept='信息系');

数据库SQL语言学习--上机练习3(插入 更新 删除)的更多相关文章

  1. 数据库SQL语言学习--上机练习4(视图)

    上机练习4 一.实验目的 . 熟悉和掌握对数据表中视图的查询操作和 SQL 命令的使用: . 熟悉和掌握对数据表中视图的更新操作和 SQL 命令的使用,并注意视图更新与基本表更新的区别与联系: . 学 ...

  2. 数据库SQL语言学习--上机练习2(连接查询 嵌套查询)

    上机练习2 1.              启动SQL Server 2008中的 SQL Server Management Studio. 2.              针对下面三张基本表进行操 ...

  3. 数据库SQL语言学习--上级练习1(数据查询)

    上机练习1 1.              启动SQL Server 2008中的 SQL Server Management Studio. 2.              创建数据库Student ...

  4. 数据库SQL语言学习----左外连接,右外连接,外连接,自然连接的形象对比

    现在有两张表,一张Student 另一张Score   1.查询每个学生及其选修课程的情况: 自然连接,Sno在Cscore中找不到就不显示,Cno在Cscore中找不到也不显示 SELECT Stu ...

  5. 我的MYSQL学习心得(八) 插入 更新 删除

    我的MYSQL学习心得(八) 插入 更新 删除 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得( ...

  6. SQL Server大量数据秒级插入/新增/删除

    原文:SQL Server大量数据秒级插入/新增/删除 1.快速保存,该方法有四个参数,第一个参数为数据库连接,第二个参数为需要保存的DataTable,该参数的TableName属性需要设置为数据库 ...

  7. C语言习题 链表建立,插入,删除,输出

    Problem B: C语言习题 链表建立,插入,删除,输出 Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 222  Solved: 92 [Subm ...

  8. YTU 2430: C语言习题 链表建立,插入,删除,输出

    2430: C语言习题 链表建立,插入,删除,输出 时间限制: 1 Sec  内存限制: 128 MB 提交: 576  解决: 280 题目描述 编写一个函数creatlink,用来建立一个动态链表 ...

  9. oracle插入,更新,删除数据

    插入,更新,删除数据 oracle提供了功能丰富的数据库管理语句 包括有效的向数据库中插入数据的insert语句 更新数据的update语句 以及当数据不再使用时删除数据的delete语句 更改数据之 ...

随机推荐

  1. nginx负载均衡、nginx ssl原理及生成密钥对、nginx配制ssl

    1.nginx负载均衡 新建一个文件:vim /usr/local/nginx/conf/vhost/load.conf写入: upstream abc_com{ip_hash;server 61.1 ...

  2. 云计算SPI(SaaS、PaaS、IaaS)

    云计算SPI(SaaS.PaaS.IaaS) The other day, I arrived at the SAP LABS CHINA for interview with my pleasure ...

  3. linux下如何执行.sh文件 【转】

    Linux下如何运行.sh文件 是UNIX/LINUX 操作系统的脚本文件,SHELL文件. 本文转载自 http://whitepoplar.javaeye.com/blog/431967 Linu ...

  4. Elasticsearch基本用法(2)--Spring Data Elasticsearch

    Spring Data Elasticsearch是Spring Data项目下的一个子模块. 查看 Spring Data的官网:http://projects.spring.io/spring-d ...

  5. SpringMVC整合Thymeleaf

    Thymeleaf的介绍 进行JavaWeb开发时主要用到的是JSP,传统的JSP需要在页面中加入大量的JSTL标签,这些标签只能运行在服务器中,前端开发人员维护这些页面比较困难,页面加载速度也比较慢 ...

  6. hdu1542 Atlantis 线段树--扫描线求面积并

    There are several ancient Greek texts that contain descriptions of the fabled island Atlantis. Some ...

  7. easyui的select使用

    这是一个小demo,其他相关功能查看easyuiAPI,需要注意的是valueField: 'id', textField: 'name'中id指json的key,name指json的值,id和nam ...

  8. 小D课堂【SpringBoot】接口Http协议开发实战

    ---恢复内容开始--- ====================2.SpringBoot接口Http协议开发实战 ============================= 1.SpringBoot ...

  9. 紧接着上篇文章,实现类一个是标准的FIFO,一个是出队在头部入队不一定追加到末尾

    注意描述:一个是插入队列(1是可以插入尾部eg一遍的序列尾部追加,2是可以插入中间eg优先队列) 而移除的描素都是删除头部 import java.util.Comparator; import ja ...

  10. MySQL--时间戳与时区问题

    对于使用 timestamp 的场景,MySQL 在访问 timestamp 字段时会做时区转换,当 time_zone 设置为 system 时,MySQL 访问每一行的 timestamp 字段时 ...