如何查找违反引用完整性的记录

2024-02-28

我有两个表应该处于一对多关系,但表的多侧似乎有一些记录阻止创建关系。违反引用完整性。

由于两个表中都有很多记录,是否有一种方法可以查询哪些记录位于多侧,而不是一侧?

**Ex.**

Table 1: (one side)
(pk)AccountId


Table 2: (many side)
(pk)UserId
(fk)AccountId  <--  Some accountId's are not in Table 1 

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

如何查找违反引用完整性的记录 的相关文章

  • MySQL创建表中的日期格式

    我必须使用 MySql 创建一个表 它可以按以下格式存储日期 我尝试过如下 CREATE TABLE birth date DATE 但它不起作用 因为日期格式是 YYYY MM DD 我该怎么办 谢谢 MySQL 或几乎任何其他数据库 中
  • MySQL如何在没有过程/函数的情况下执行命令块

    我尝试在 MySQL Workbench 上运行一段 SQL 命令 就像在 SQL Server 上一样 但它告诉我 声明在此位置无效 我在网上看到了各种这样的例子 我真的不明白为什么会出现这个错误 一些提示 代码 其中 SQL Serve
  • T-SQL 问题:查询 XML

    任何人都可以告诉我如何从这些数据生成 DATA Key ParentKey 5 NULL 25 5 33 25 26 5 27 5 34 27 28 5 29 5 这个 XML 结果 RESULTS
  • 使用输出在合并语句中设置变量

    我有一个合并语句应该始终更新或插入一条记录 我想记住变量中该语句的 ID 它看起来像这样 DECLARE int int MERGE dbo table AS A USING SELECT stringtomatch AS string A
  • SQL Server 删除触发器 - 引用已删除行或标记为删除的行的行句柄

    我在表上有一个删除触发器 用于从另一个数据库的表中删除条目 CREATE TRIGGER dbo Trigger Contracts Delete ON dbo Contracts AFTER DELETE NOT FOR REPLICAT
  • SQL Server:删除具有外键约束的行:事务可以覆盖约束吗?

    我有一些添加了外键约束的表 它们与代码生成一起使用 以在生成的存储过程中设置特定的联接 是否可以通过在事务中调用多个删除来覆盖这些约束 特别是 C 中的 TransactionScope 或者绝对需要级联删除吗 不要使用级联删除 这样可能会
  • SQL 用随机数据填充表

    我有一个包含两个字段的表 id UUID 是主键并且 描述 var255 我想用SQL语句插入随机数据 我希望这个描述是随机的 PS 我正在使用 PostgreSQL 我不确定这是否符合 随机描述 的要求 也不清楚您是否想要生成完整的数据
  • 自定义 Sql Server 对象资源管理器右键单击菜单项

    如何在 Sql Server 2012 的对象资源管理器中添加或自定义右键菜单项 例如 我想将新项目添加到表右键菜单中以生成自定义表创建器脚本 您可以编写一个 SSMS 加载项 See http sqlblogcasts com blogs
  • 如何使用jdbc驱动编写事务?

    我想使用 jdbc 编写一个事务java 我尝试过这个简单的交易 BEGIN TRANSACTION NL GO NL UPDATE table SET col test where id 1010 NL GO NL COMMIT 我尝试过
  • 在sql server中动态生成列名

    请看下面的查询 select name as Employee Name from table name 我想生成 Employee Name 动态地基于其他列值 这是示例表 s dt dt01 dt02 dt03 2015 10 26 I
  • 检索前 10 行并对第 11 行中的所有其他行求和

    我有以下查询来检索每个国家 地区的用户数量 SELECT C CountryID AS CountryID C CountryName AS Country Count FirstName AS Origin FROM Users AS U
  • 在大表上快速使用 LIMIT 和 OFFSET 进行 SELECT

    我的表中有超过 1000 万条记录 SELECT FROM tbl ORDER BY datecol DESC LIMIT 10 OFFSET 999990 输出EXPLAIN ANALYZE on 解释 depesz com http e
  • SQL Server - 即使在回滚的情况下如何确保标识字段正确增加

    在 SQL Server 中 如果涉及插入新行的事务被回滚 则标识字段中的数字将被跳过 例如 如果Foos表是99 然后我们尝试插入一个新的Foo记录但回滚 然后 ID 100 被 用完 下一个Foo行编号为 101 有什么方法可以改变这种
  • sql“LIKE”查询语法

    这个查询有什么问题 string command get pay select Credit from Update Company Credit where Update Date LIKE System DateTime Today T
  • 如何每行输出 7 条记录,一周中的每一天输出 1 条记录?

    试图在这里节省大量的数据输入 我目前有以下输出 CONTID DESCR 001 Area 1 001 Area 2 001 Area 3 我想要做的是为每个 DESCR 区域 输出 7 条记录 一周中的每一天输出 1 条记录 相应地为 0
  • 查看oracle有关主/外键约束的元数据

    哪个表包含有关约束的详细信息 例如外键引用的表 表 all cons columns all constraints 仅包含约束的名称 这不是很有帮助 我目前正在使用 dbms metadata get ddl 但它不适用于所有数据库 Th
  • SQL Server 2017 快速安装失败

    我尝试在 Windows 10 上安装 SQL Server 2017 Express 但失败 这是失败后向我显示的详细信息 Action required Use the following information to resolve
  • SQL Server 文本数据类型最大长度 = 65,535?

    我正在使用的软件使用文本字段来存储 XML 根据我的在线搜索 文本数据类型应该包含 2 31 1 个字符 目前 SQL Server 每次都会将 XML 截断为 65 535 个字符 我知道这是由 SQL Server 引起的 因为如果我直
  • 分区表查询仍然扫描所有分区

    我有一个包含超过十亿条记录的表 为了提高性能 我将其分区为30个分区 最常见的查询有 id 在他们的 where 子句中 所以我决定对表进行分区id column 基本上 分区是这样创建的 CREATE TABLE foo 0 CHECK
  • 我可以采取哪些措施来提高 SQL Server 中纯用户定义函数的性能?

    我制作了一个简单但计算相对复杂的 UDF 用于查询很少更改的表 在典型用法中 该函数会在一个非常小的参数域上从 WHERE 子句中多次调用 如何才能更快地使用 UDF 我的想法是应该有某种方式告诉 SQL Server 我的函数使用相同的参

随机推荐