【数据库SQL server】关系数据库标准语言SQL之数据更新

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
简介: 【数据库SQL server】关系数据库标准语言SQL之数据更新



🌌关系数据库标准语言SQL之数据更新

🌍 数据更新

语句格式

       DELETE
      FROM     <表名>
      [WHERE <条件>];

功能:删除指定表中满足WHERE子句条件的元组

WHERE子句

  1. 指定要删除的元组
  2. 缺省表示要删除表中的全部元组,表的定义仍在字典中

三种删除方式

  1. 删除某一个元组的值
  2. 删除多个元组的值
  3. 带子查询的删除语句

【1】 删除学号为201215128的学生记录。

       DELETE

        FROM Student

        WHERE Sno= 201215128 ';

【1】删除所有的学生选课记录。

       DELETE

       FROM SC;

【1】删除计算机科学系所有学生的选课记录。

       DELETE

       FROM  SC

       WHERE  Sno  IN

           (SELETE  Sno

                   FROM   Student

                   WHERE  Sdept= 'CS') ;


🌍空值的处理

空值就是“不知道”或“不存在”或“无意义”的值。

一般有以下几种情况:

  1. 该属性应该有一个值,但目前不知道它的具体值
  2. 该属性不应该有值
  3. 由于某种原因不便于填写

属性定义(或者域定义)中

  1. 有NOT NULL约束条件的不能取空值
  2. 加了UNIQUE限制的属性不能取空值
  3. 码属性不能取空值
  4. 空值与另一个值(包括另一个空值)的算术运算的结果为空值
  5. 空值与另一个值(包括另一个空值)的比较运算的结果为UNKNOWN。
  6. 有UNKNOWN后,传统二值(TRUE,FALSE)逻辑就扩展成了三值逻辑

【1】向SC表中插入一个元组,学生号是”201215126”,课程号是”1”,成绩为空。

INSERT INTO SC(Sno,Cno,Grade)

VALUES('201215126 ','1',NULL);   /*该学生还没有考试成绩,取空值*/

INSERT INTO SC(Sno,Cno)

VALUES(' 201215126 ','1');             /*没有赋值的属性,其值为空值*/

【1】将Student表中学生号为”201215200”的学生所属的系改为空值。

   UPDATE Student

   SET Sdept = NULL

   WHERE Sno='201215200';

判断一个属性的值是否为空值,用IS NULL或IS NOT NULL来表示。

【1】从Student表中找出漏填了数据的学生信息

   SELECT  *

   FROM Student

   WHERE Sname IS NULL OR Ssex IS NULL OR Sage IS NULL OR Sdept IS NULL;

【1】找出选修1号课程的不及格的学生。

  SELECT Sno

  FROM SC

  WHERE Grade < 60 AND Cno='1';

 查询结果不包括缺考的学生,因为他们的Grade值为

 null。

【1】选出选修1号课程的不及格的学生以及缺考的学生。

SELECT Sno

FROM SC

WHERE Grade < 60 AND Cno='1'

UNION

SELECT Sno

FROM SC

WHERE Grade IS NULL AND Cno='1'

或者

SELECT Sno

FROM SC

WHERE Cno='1' AND (Grade<60 OR Grade IS NULL);


📝总结

数据库SQL Server领域就像一片未被勘探的信息大海,引领你勇敢踏入数据科学的神秘领域。这是一场独特的学习冒险,从基本概念到算法实现,逐步揭示更深层次的模式分析、匹配算法和智能模式识别的奥秘。

相关实践学习
体验RDS通用云盘核心能力
本次实验任务是创建一个云数据库RDS MySQL(通用云盘),并通过云服务器ECS对RDS MySQL实例进行压测,体验IO加速和IO突发带来的性能提升;并通过DMS执行DDL,将数据归档到OSS,再结合云盘缩容,体验数据归档带来的成本优势。
目录
相关文章
|
2月前
|
SQL 数据库
数据库数据恢复—SQL Server数据库报错“错误823”的数据恢复案例
SQL Server附加数据库出现错误823,附加数据库失败。数据库没有备份,无法通过备份恢复数据库。 SQL Server数据库出现823错误的可能原因有:数据库物理页面损坏、数据库物理页面校验值损坏导致无法识别该页面、断电或者文件系统问题导致页面丢失。
101 12
数据库数据恢复—SQL Server数据库报错“错误823”的数据恢复案例
|
3月前
|
关系型数据库 MySQL 数据库
RDS MySQL灾备服务协同解决方案构建问题之数据库备份数据的云上云下迁移如何解决
RDS MySQL灾备服务协同解决方案构建问题之数据库备份数据的云上云下迁移如何解决
|
7天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第8天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统准备、配置安装源、安装 SQL Server 软件包、运行安装程序、初始化数据库以及配置远程连接。通过这些步骤,您可以顺利地在 CentOS 系统上部署和使用 SQL Server 2019。
|
8天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第7天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统要求检查与准备、配置安装源、安装 SQL Server 2019、配置 SQL Server 以及数据库初始化(可选)。通过这些步骤,你可以成功安装并初步配置 SQL Server 2019,进行简单的数据库操作。
|
22天前
|
存储 数据挖掘 数据库
数据库数据恢复—SQLserver数据库ndf文件大小变为0KB的数据恢复案例
一个运行在存储上的SQLServer数据库,有1000多个文件,大小几十TB。数据库每10天生成一个NDF文件,每个NDF几百GB大小。数据库包含两个LDF文件。 存储损坏,数据库不可用。管理员试图恢复数据库,发现有数个ndf文件大小变为0KB。 虽然NDF文件大小变为0KB,但是NDF文件在磁盘上还可能存在。可以尝试通过扫描&拼接数据库碎片来恢复NDF文件,然后修复数据库。
|
2月前
|
SQL 关系型数据库 MySQL
创建包含MySQL和SQLServer数据库所有字段类型的表的方法
创建一个既包含MySQL又包含SQL Server所有字段类型的表是一个复杂的任务,需要仔细地比较和转换数据类型。通过上述方法,可以在两个数据库系统之间建立起相互兼容的数据结构,为数据迁移和同步提供便利。这一过程不仅要考虑数据类型的直接对应,还要注意特定数据类型在不同系统中的表现差异,确保数据的一致性和完整性。
32 4
|
2月前
|
SQL 存储 数据管理
SQL Server数据库
SQL Server数据库
58 11
|
3月前
|
SQL 数据库
Microsoft SQL Server 2014如何来备份数据库
Microsoft SQL Server 2014如何来备份数据库
358 3
|
2月前
|
SQL 安全 数据库
基于SQL Server事务日志的数据库恢复技术及实战代码详解
基于事务日志的数据库恢复技术是SQL Server中一个非常强大的功能,它能够帮助数据库管理员在数据丢失或损坏的情况下,有效地恢复数据。通过定期备份数据库和事务日志,并在需要时按照正确的步骤恢复,可以最大限度地减少数据丢失的风险。需要注意的是,恢复数据是一个需要谨慎操作的过程,建议在执行恢复操作之前,详细了解相关的操作步骤和注意事项,以确保数据的安全和完整。
116 0
|
3月前
|
存储 C# 关系型数据库
“云端融合:WPF应用无缝对接Azure与AWS——从Blob存储到RDS数据库,全面解析跨平台云服务集成的最佳实践”
【8月更文挑战第31天】本文探讨了如何将Windows Presentation Foundation(WPF)应用与Microsoft Azure和Amazon Web Services(AWS)两大主流云平台无缝集成。通过具体示例代码展示了如何利用Azure Blob Storage存储非结构化数据、Azure Cosmos DB进行分布式数据库操作;同时介绍了如何借助Amazon S3实现大规模数据存储及通过Amazon RDS简化数据库管理。这不仅提升了WPF应用的可扩展性和可用性,还降低了基础设施成本。
82 0