上机练习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. Ubuntu下一个好用的终端

    在终端下输入: sudo apt-get install terminator 快捷键: shift+ctrl+e          在当前窗口右侧新开一个窗口 shift+ctrl+w        ...

  2. Myelipse中xml约束文件的导入(以spring为例)

    为了在电脑处于未联网状态下,beans.xml中书写标签具有提示功能,需要在电脑本地导入约束文件,下面上图 注意:将location后缀添加到key中beans的后面 注意:导入 context,ao ...

  3. doubleclick video notes

    1,vast duration it must math this format ,if use “00:00:7 ”  it will tip “ ” <Duration>00:00:0 ...

  4. 获取和设置用户id以及组id

    #include<unistd.h> uid_t getuid(void); uid_t geteuid(void);//获取有效用户id gid_t getgid(void); gid_ ...

  5. MySQL--数据库连接异常问题汇总

    ======================================================== Name or service not known 错误消息: [Warning] I ...

  6. What's New In Zeebe: Scaling Zeebe, New Client APIs, Faster Requests, Timestamps, NodeJS Client, and Default Topic is Back!

    Written by Daniel Meyer on May 16 2018 in the What's New In Zeebe category. Welcome to the first-eve ...

  7. tile38 roaming-geofences 试用

    tile38 支持动态实时的移动对象的数据监控 环境准备 docker-compose 文件 version: "3" services:  app:    image: tile ...

  8. Unity Shader 入门精要学习 (冯乐乐 著)

    第1篇 基础篇 第1章 欢迎来到Shader的世界 第2章 渲染流水线 第3章 Unity Shader 基础 第4章 学习Shader所需的数学基础 第2篇 初级篇 第5章 开始Unity Shad ...

  9. Python基础_私有变量访问限制

    Python内置了一些特殊变量,以前后上下划线标注,同时我们自己要想定义一些变量,不想让外部访问,又该怎么做呢?更多内容请参考:Python学习指南 访问限制 在class内部,可以有属性和方法,而外 ...

  10. vue-loader v15、vue-loader v14及之前版本,配置css modules的区别

    vue-loader v15 配置css modules: 是在 css-loader 里配置 官方文档:https://vue-loader.vuejs.org/zh/migrating.html# ...