SQL Server:是否可以同时插入两个表?

2024-05-04

我的数据库包含三个表,称为Object_Table, Data_Table and Link_Table。链接表仅包含两列,对象记录的标识和数据记录的标识。

我想从中复制数据DATA_TABLE它链接到一个给定的对象标识并将相应的记录插入到Data_Table and Link_Table对于不同的给定对象标识。

I can通过选择一个表变量并循环为每次迭代执行两次插入来完成此操作。

这是最好的方法吗?

Edit:我想避免循环有两个原因,第一个原因是我很懒,循环/临时表需要更多代码,更多代码意味着更多地方会犯错误,第二个原因是对性能的担忧。

我可以复制一次插入中的所有数据,但如何让链接表链接到新数据记录,其中每条记录都有一个新 ID?


In one 陈述: No.

In one 交易: Yes

BEGIN TRANSACTION
   DECLARE @DataID int;
   INSERT INTO DataTable (Column1 ...) VALUES (....);
   SELECT @DataID = scope_identity();
   INSERT INTO LinkTable VALUES (@ObjectID, @DataID);
COMMIT

好消息是上面的代码也保证是atomic,并且可以在单个函数调用中使用一个 sql 字符串从客户端应用程序发送到服务器,就好像它是一条语句一样。您还可以将触发器应用于一个表以获得单个插入的效果。但是,它最终仍然是两个语句,您可能不想运行触发器every insert.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SQL Server:是否可以同时插入两个表? 的相关文章

  • 使用条件 SQL 统计每月汇总记录

    我有一张桌子 我们就叫他们桌子吧SUMMARYDATA NIP NAME DEPARTMENT STATUSIN STATUSOUT TOTALLOSTTIME A1 ARIA BB 2020 01 21 08 06 23 2020 01
  • 如何在 Spring Data 中选择不同的结果

    我在使用简单的 Spring Data 查询或 Query 或 QueryDSL 在 Spring Data 中构建查询时遇到问题 如何选择三列 研究 国家 登录 不同的行 并且查询结果将是用户对象类型的列表 Table User Id S
  • 自动提取数据 - Oracle SQL Developer

    我通过 SQL Developer 连接到 Oracle 数据库 我想编写一个返回每月数据集的查询 然后将该数据提取到分隔文本文件中 我知道如何做到这一点就好了 我想知道是否有一种方法可以编写一个脚本来运行查询并在一年内逐月提取数据 这样我
  • TSQL - 生成文字浮点值

    我理解比较浮点数时遇到的许多问题 并对它们在这种情况下的使用感到遗憾 但我不是表格作者 只有一个小障碍需要克服 有人决定使用浮点数 就像您期望使用 GUID 一样 我需要检索具有特定浮点值的所有记录 sp help MyTable Colu
  • Spring Data JPA 选择不同

    我有一个情况 我需要建立一个select distinct a address from Person a 其中地址是 Person 内的地址实体 类型的查询 我正在使用规范动态构建我的 where 子句并使用findAll Specifi
  • 使用 MS Access 链接表连接到 SQL Server 后端时是否可能发生 SQL 注入

    我一直在对此进行一些研究 但到目前为止还是一片空白 情况是这样的 我正在开发一个链接到 SQL Server 后端的 MS Access 前端 我在某种程度上使用 Access 中的链接表 表单访问 SQL DB 这样 当用户更新表单中的值
  • 自动删除主键序列中的间隙

    我正在创建一个网页 该网页根据用户操作将数据存储到 MySQL 数据库中 数据库有很多行 行的主键是列 rowID 它只是按顺序对行进行编号 例如 1 2 3 4 用户可以选择删除行 问题是当用户删除最后一行以外的行时 rowID 中有一个
  • 在对象数组内的特定 JSON 值上创建索引

    假设我的表中有一个 varchar 列 其结构如下 Response DataArray Type Address Value 123 Fake St Type Name Value John Doe 我想在 DataArray 数组元素的
  • java库维护数据库结构

    我的应用程序一直在开发 所以偶尔 当版本升级时 需要创建 更改 删除一些表 修改一些数据等 通常需要执行一些sql代码 是否有一个 Java 库可用于使我的数据库结构保持最新 通过分析类似 db structure version 信息并执
  • 何时在 mysql 中使用 Union [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 对于 Union 您会在什么现实情况下使用它 因为对我来说 对具有不同列用途 含义的两个表中的两个选择查询使用联合是没有意义的 例如
  • SQL Server:将表达式转换为数据类型 bigint 时出现算术溢出错误

    这是我的查询顺序 SELECT CASE WHEN BarCode IS NOT NULL AND ExternelBarCode IS NULL THEN BarCode WHEN BarCode IS NULL AND Externel
  • 带有可变 WHERE 子句的批量 UPDATE 表

    我有一堆值对 foo1 bar1 foo2 bar2 我想做一堆更新 将 foo 列设置为 foo1 其中 bar 列为 bar1 我正在使用 psycopg2 在 Python 中执行此操作 我可以executemany与查询UPDATE
  • 如何将SQL数据加载到Hortonworks中?

    我已在我的电脑中安装了 Hortonworks SandBox 还尝试使用 CSV 文件 并以表结构的方式获取它 这是可以的 Hive Hadoop nw 我想将当前的 SQL 数据库迁移到沙箱 MS SQL 2008 r2 中 我将如何做
  • SQL Server 中高效的字符串后缀搜索?

    我想找到与谓词匹配的所有行MyColumn LIKE FooBar 但通过使用索引查找而不是扫描 一种方法本质上是创建 MyColumn 的反向版本并搜索反向模式 ooF 在该列上 在反向列上有一个常规索引 然而 我不喜欢手动创建这个反向列
  • 如何用约束标记一大组“传递群”?

    在 NealB解决方案之后进行编辑 与以下解决方案相比 NealB的解决方案非常非常快任何另一个 https stackoverflow com q 18033115 answers and 提出了关于 添加约束以提高性能 的新问题 Nea
  • Oracle SQL 函数中可以有 commit 语句吗

    在 SQL 函数中使用 COMMIT 语句是否可能 有意义 从技术上来说 答案是肯定的 你can请执行下列操作 create or replace function committest return number as begin upd
  • 如何拥有引用另一个表的检查约束?

    我在 SQL Server 2008 数据库中有以下表 tblItem 其中有一个ItemID field 好项目 它还有一个 ItemID 字段 并且有一个指向 tblItem 的外键 tblBadItem 它也有一个 ItemID 字段
  • 时间序列数据的自连接

    我需要一些帮助来完成我认为应该是相当简单的自连接查询 只需要将两条记录中匹配的开始时间和结束时间合并为一条记录 假设我的表中有以下内容 Time Event 08 00 Start 09 00 Stop 10 30 Start 10 45
  • WHERE NOT EXIST 附近的语法错误

    我在堆栈中搜索 但没有一个达到最终答案 我的查询是这样的 INSERT INTO user username frequence autoSend VALUES feri2 3 1 WHERE NOT EXISTS SELECT FROM
  • 在同一查询中选择 Count of ip 和 Count of DISTINCT ip

    我有一个这样的表结构 TABLE NAME counter id datetime url ip 1 2013 04 12 13 27 09 url1 ip01 2 2013 04 13 10 55 43 url2 ip02 3 2013

随机推荐

  • 如何更改联系表单 7 动态重定向 URL - WordPress

    我正在为我的一个客户建立一个网站 他们希望在他们的网站中添加如下功能 当人们点击下载链接时 会出现一个表格 联系表格 7 访客输入详细信息后 它将重定向到下载链接 通过对联系表单 7 使用以下附加设置 我可以在表单提交后重定向到新页面 on
  • 批处理中嵌套 IF ( IF ( ... ) ELSE( .. ) ) 语句

    我正在尝试写一个IF ELSE语句嵌套在另一个语句中IF陈述 这是我所拥有的 IF dirdive 1 IF DEFINED log ECHO DATE TIME gt gt log FOR R root1 G IN DO SET G G
  • Quartz 调度程序执行 Runnable

    Quartz Scheduler 可以执行 Runnable 吗 例如 我有以下代码正在由 spring 运行TaskScheduler Autowired Qualifier IntegrationConfiguration TASK S
  • C# 有没有办法制作时间范围列表?可配置

    有没有办法列出时间范围 例如 包含以下内容的列表 中午 12 00 至下午 1 00 下午 1 00 至 2 00 ETC 其中划分部分是配置 我认为你必须使用日期时间并将其除以一定的数字 在本例中为一小时 有人可以指出我正确的方向或给我提
  • 定期递归调用函数

    所以我想知道定期递归调用函数的更好方法 就堆栈增长和性能而言 是什么 例如 假设我想每 200 毫秒读取一次文件内容 我有以下两种方法 想知道它们是否有什么不同 方法 1 使用普通的 ols setTimeout 而不使用 process
  • 项目引用 .net core 类库时出现问题

    我创建了新的 asp net core Web 应用程序和 net core 类库 然后我尝试从 asp net core 添加对 net core 类库的引用 构建正常 但不可见 任何想法 任何想法 Yes this https stac
  • “值错误:元素定位器与任何元素都不匹配。”当尝试定位一个元素时

    我使用 Robot Framework 和 Selenium2Library 进行网站测试自动化 我的 HTML 值是
  • 在实体框架中映射自定义数据库值函数

    我有一个简单的数据库函数 它需要两个字符串作为参数并返回一个字符串 我想用实体框架来映射它 如同这个问题 https stackoverflow com questions 45451383 dbfunction cannot be tra
  • CSS - 显示:无;不工作

    我正在尝试开发一个移动样式表 在这个样式表中我想删除一个特定的 div 在div的HTML代码中 我放置了一个名为 tfl 的id 如下所示 div style display block width 187px height 260px
  • 如何创建 Azure Mgmt 序列化器/反序列化器参数?

    我可以在最新的 azure mgmt media 和 Python 存储 sdk 中看到 用户需要为序列化器 反序列化器传递 2 个参数 我的 Python 经验很少 我不知道如何创建这些对象 我找不到任何媒体示例 也没有带有最新签名 3
  • 使用反射将 Nullable 属性复制到非 Nullable 版本

    我正在编写代码以使用反射将一个对象转换为另一个对象 它正在进行中 但我认为它可以归结为以下内容 我们相信这两个属性具有相同的类型 private void CopyPropertyValue object source string sou
  • 如何引用 Cypress 配置文件中的环境变量?

    我读了赛普拉斯中的环境变量 https www toolsqa com cypress environment variables in cypress 以及有关在 Cypress 运行中传递环境变量的其他文章 但是 如何引用 JSON 配
  • 如何检测Windows 8.1开始菜单?

    当我们在 Windows 8 1 上按下开始菜单时 它会以磁贴的形式显示所有新的开始菜单以及应用程序 该菜单显示在整个屏幕上 有没有办法检测这个菜单是否在 C 中打开 8 1 SDK 中是否有 winAPI 可以执行此操作 提前致谢 调用
  • 是否有可能成为内置类型的虚拟子类?

    是否可以使用户定义的类型成为Python中内置类型的虚拟子类 我希望我的班级被视为以下类别的子类int 但是 我don t想像这样直接继承 class MyInt int Do some stuff kind of like an int
  • 如何在 C# 中从 TabPage 获取控件?

    我有几个选项卡页 每个选项卡页都包含富文本框 如何在选定的选项卡上访问 richtechbox TabPage selectedTab tabControl SelectedTab RichTextBox selectedRtb selec
  • 使用lxml解析HTML时如何保留名称空间信息?

    gt gt gt from lxml etree import HTML tostring gt gt gt tostring HTML
  • 如何在 BigQuery 中取消透视?

    不确定要调用什么函数 但转置是我能想到的最接近的函数 I have a table in BigQuery that is configured like this 但我想查询一个配置如下的表 创建此表的 SQL 代码是什么样的 Thank
  • 在我的 FirebaseRecyclerAdapter 方法中,我看不到 populateviewholder 方法未实现

    我想从 firebase 检索数据 当我添加 FirebaseRecyclerAdapter 方法时 populateviewholder 方法没有实现而不是这个 另外两个 onCreateViewHoldermethod onBind 方
  • API 版本 Android Studio 预览中为 Null

    我从 Android Studio 2 3 更新到 3 0 现在 XML 编辑器上的任何预览都不会显示 我可以在 API 级别选择器的顶部栏中看到一个 null 它没有给我任何选择的选项 有什么可能的解决方案吗 我尝试了使缓存无效并重新启动
  • SQL Server:是否可以同时插入两个表?

    我的数据库包含三个表 称为Object Table Data Table and Link Table 链接表仅包含两列 对象记录的标识和数据记录的标识 我想从中复制数据DATA TABLE它链接到一个给定的对象标识并将相应的记录插入到Da