续2010年11月09日的《SQL语句中CASE WHEN以及CAST的运用》一文,如果在基础数据教师表中添加了新的教师用户,而恰好添加的教师已经存在于教学成果数据中,则需要更新教学成果数据中该教师的信息,即:之前存储的是教师的姓名,添加教师后,则应该存储教师的编号。于是需要定期检查是否有新添加的教师信息,需要跨表更新教学成果数据。

以下是实现方法:

    UPDATE  Web_TeacherIDListSET    TeacherID = BaseInfo_Teacher.TeacherIDFROM Web_TeacherIDList INNER JOINBaseInfo_Teacher ON Web_TeacherIDList.TeacherID = BaseInfo_Teacher.TeacherName

还可以通过RETURN @@ROWCOUNT获得更新的数据条数,以下是存储过程:

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go-- =============================================
-- Author:      何朝阳
-- Create date: 2011年4月9日10:59:27
-- Description: 更新教师列表
-- =============================================
CREATE PROCEDURE [dbo].[UP_TIMS_Web_Update_TeacherIDList]
AS
BEGINUPDATE Web_TeacherIDListSET    TeacherID = BaseInfo_Teacher.TeacherIDFROM Web_TeacherIDList INNER JOINBaseInfo_Teacher ON Web_TeacherIDList.TeacherID = BaseInfo_Teacher.TeacherNameRETURN @@ROWCOUNT
END

转载于:https://www.cnblogs.com/hechaoyang/archive/2011/04/09/2010277.html

MSSQL中实现多表更新相关推荐

  1. SQL Server和MysQL中的联表更新sql示例

    目录 需求说明 SQL Server中联表更新sql示例 MySQL中联表更新sql示例 需求说明 需求说明:把表B的报名号数据,更新到另一张表A的报名号列.通过表A证件号码和表B身份证号相等. SQ ...

  2. 技巧:Access中查询多表更新其中一表数据

    在Access数据库,利用ADOQuery查询多表数据更新其中一表数据 1.添加ADOQuery控件,增加SQL为 select a.*,b.字段 from 表1 a,  表2 b, a inner ...

  3. 几种内表更新方式的性能比较

    ABAP程序中,内表更新主要有以下程序中的三种更新方式.一是通过字段符.二是使用索引.三是循环中直接更新.据我观察,直接使用第三种方式的人占大多数,使用字段符与使用索引的人应该差不多.这三种方式实际性 ...

  4. sql server跨服务器修改数据,SQL Server跨数据库服务器查询和跨表更新的详细操作...

    SQL Server数据库跨数据库服务器查询和跨表更新的相关知识是本文我们主要要介绍的内容,接下来我们就通过一个实例来介绍这一过程.实例是这样的:想实现的功能很简单, 在我的本地一个表用来保存省的信息 ...

  5. (转)MSSQL中如何用SQL清除所有表的数据(downmoon)?

    有朋友问起:MSSQL中如何用SQL清除所有表的数据?这个需求分三种类型: 第一:只要数据库中表是空的: 第二:表是空的,并且自增长列可以从1开始增长. 第三:表是空的,并且自增长列可以从1开始增长, ...

  6. [转]树结构表递归查询在ORACLE和MSSQL中的实现方法

    树结构表:记录树形数据的二维数据表,包含"本节点ID"和"父节点ID" 经常需要进行递归查询某个节点下的所有节点数据 以下是分别在ORACLE和MSSQL中的实 ...

  7. 以A表中的值快速更新B表中记录的方法

    1.问题描述 有两张表,A表记录了某些实体的新属性,B表记录了每个实体的旧属性,现在打算用A中的属性值去更新B中相同实体的旧属性,如下图所示: 类似这样的需求,怎样做比较高效呢? 2.制作模拟数据   ...

  8. oracle用游标drop多个表,Oracle Procedure中使用游标cursor更新多表?

    Oracle中写Procedure一直是Oracle开发中比较复杂的地方,但是掌握procedure 和cursor将使得你在Oracle开发中如鱼的水,真正体会Oracle的强大.下面通过我自己写的 ...

  9. mysql连表删除语句_MySQL中联表更新与删除的语法介绍

    前言 相信大家在日常使用mysql,可能会遇到需要同时更新两张表时,我会采用在同一个事务中使用2句sql语句分别进行更新.其实,这种需要发送2句sql语句的方法效率相对来说是比较低的,有没有只用1句s ...

最新文章

  1. 短 URL 服务的设计以及实现
  2. 加入依赖后刷新_和平精英海岛图神秘野区加入!地图没显示 刷新点在这儿
  3. PHP在线加密系统-陌屿云PLUS开源版V8.01
  4. 关于物联网规则引擎技术,你想要知道的都在这儿!
  5. 【JAVA SE】第十一章 正则表达式、包装类和BigDecimal
  6. 【FLink】FLink学习遇到的好文章
  7. 自动化比手工测试成本高?使用Selenium评估测试自动化的ROI指标
  8. Redis的DMS管理工具treeNms
  9. 软考高级 真题 2011年上半年 信息系统项目管理师 综合知识
  10. Matlab使用EMD
  11. 苹果5完美越狱_iOS 9.3.5如何越狱 iOS 9.3.5免费越狱教程「步骤详解」
  12. Spring Boot的Maven插件Spring Boot Maven plugin详解
  13. 主线程中同步的 XMLHttpRequest 已不推荐使用,因其对终端用户的用户体验存在负面影响。
  14. 领域驱动设计 -- 领域驱动建模与面向对象建模的差异(一)
  15. ISDN线路编码介绍
  16. Webots平台下NAO机器人仿真环境的搭建
  17. 关于安装win8系统的一些心得(详细)
  18. 【Python刷题*计算客】A+B+C问题
  19. 如何用ArcGIS绘制白杨市范围
  20. AIRIOT物联网低代码平台如何配置三菱PLC驱动?

热门文章

  1. LeetCode 2155. 分组得分最高的所有下标(前缀和)
  2. TensorFlow 2.0 - tf.saved_model.save 模型导出
  3. 程序员面试金典 - 面试题 17.14. 最小K个数(快排划分O(n))
  4. LeetCode 106. 已知中序后序 求二叉树
  5. Maven详解及实例
  6. Flink的时间语义和Watermark
  7. php linux 删除文件夹,linux下如何删除文件夹
  8. Power BI连接MySQL 提示错误......未能加载文件或程序集......或它的某一个依赖项
  9. python列表功能默写_初识 Python 作业及默写
  10. NLP、炼丹技巧和基础理论文章索引