---
title: "foreign_key_checks - OceanBase 数据库 V4.2.4 | OceanBase 文档中心"
description: foreign_key_checks 说明 该变量从 V2.1 版本开始引入。 功能描述 foreign_key_checks 用于设置是否在 DML/DDL 中检查外建约束。 功能适用性 该变量仅适用于 OceanBase 数据库 MySQL 模式。 属性说明 属性 描述 参数类型 bool 默认值 1 取值范围 …
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 4.2.4

# foreign_key_checks

更新时间：2024-07-11 00:04:57

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.2.4/zh-CN/700.reference/800.configuration-items-and-system-variables/200.system-variable/300.global-system-variable/2700.foreign_key_checks-global.md)

#### 说明

该变量从 V2.1 版本开始引入。

## 功能描述

`foreign_key_checks` 用于设置是否在 DML/DDL 中检查外建约束。

#### 功能适用性

该变量仅适用于 OceanBase 数据库 MySQL 模式。

## 属性说明

| **属性** | **描述** |
| --- | --- |
| 参数类型 | bool |
| 默认值 | 1 |
| 取值范围 | - 0：不检查外键约束 - 1：检查外键约束 |
| 生效范围 | - Global - Session |
| 是否可修改 | 是，支持通过 `SET` 语句修改。 |

## 使用说明

外键检查由 `foreign_key_checks` 变量控制，该变量默认启用。通常，在正常操作期间启用此变量以强制执行参照完整性。

在以下情况下禁用 `foreign_key_checks` 会对数据库带来正面影响：

- 删除由外键约束引用的表。只有在禁用 `foreign_key_checks` 后才能删除引用的表。删除表时，表上定义的约束也会被删除。
 - 以不同于外键关系所需的顺序重新加载表。
 - 进行数据导入操作时，可以关闭外键检查，以加速数据导入。
 - 对具有外键关系的表执行 `ALTER TABLE` 操作。​

同样，禁用 `foreign_key_checks` 也会带来一些负向影响：

- 允许删除包含带有外键的表的数据库，这些表被数据库外的表引用。
 - 允许删除带有其他表引用的外键的表。​

启用 `foreign_key_checks` 不会触发表数据的扫描，这意味着当 `foreign_key_checks` 重新启用时，在禁用 `foreign_key_checks` 时添加到表中的行不会检查一致性。

## 配置示例

- Session 生效

  ```shell
  obclient> SET foreign_key_checks=1;

  ```
 - Global 生效

  ```shell
  obclient> SET GLOBAL foreign_key_checks=1;

  ```

## 相关文档

[外键约束](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001037051)

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
