---
title: 添加外键时报错，错误代码 ORA-00600-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于 添加外键时报错，错误代码 ORA-00600相关的常见问题和使用技巧，帮助您快速解决 添加外键时报错，错误代码 ORA-00600的难题。
---
切换语言

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

划线反馈

# 添加外键时报错，错误代码 ORA-00600

更新时间：2023-12-07 03:16

适用版本： V2.1.x、V2.2.x、V3.1.x、V3.2.x、V4.0.x、V4.1.x、V4.2.x 内容类型：Troubleshoot  

本文介绍 OceanBase 数据库 Oracle 模式下添加外键时报 `ORA-00600` 错误的处理方法。

## 问题现象

为 `cust` 表创建外键约束时，显示关联字段错误。

```shell
obclient [SYS]> ALTER TABLE cust ADD CONSTRAINT C_FK FOREIGN KEY (c_w_id) REFERENCES ware(w_name);
ORA-00600: internal error code, arguments: -5317, Cannot add foreign key constraint

```

该报错信息对应的错误码信息如下：

- 错误码：ORA-00600
 - OceanBase 错误码：5317

## 可能原因

添加外键约束时，如果外键的字段与关联字段的类型不匹配时，系统会报错。

## 解决方法

请参考以下步骤，查看当前表与关联表中各字段类型，确认关联表的主键后，再重新创建外键约束。

1. 查看当前表和关联表 `ware` 的表结构，确认引用列是否为主键或者唯一键。外键引用列必须为被引用表的唯一键或主键。

   ```shell
   obclient> DESC CUST;
   +--------+------------+------+-----+---------+-------+
   | Field  | Type       | Null | Key | Default | Extra |
   +--------+------------+------+-----+---------+-------+
   | C_ID   | NUMBER(38) | NO   | PRI | NULL    |       |
   | C_W_ID | NUMBER(38) | YES  |     | NULL    |       |
   +--------+------------+------+-----+---------+-------+
   2 rows in set

   obclient [SYS]> DESC WARE;
   +--------+---------------+------+-----+---------+-------+
   | Field  | Type          | Null | Key | Default | Extra |
   +--------+---------------+------+-----+---------+-------+
   | W_ID   | NUMBER(38)    | NO   | PRI | NULL    |       |
   | W_NAME | VARCHAR2(256) | YES  | UNI | NULL    |       |
   | W_CITY | VARCHAR2(256) | YES  | UNI | NULL    |       |
   +--------+--------------+------+-----+---------+-------+
   3 rows in set

   ```
 2. 选择主键后重新创建外键约束。

   ```shell
   obclient [SYS]> ALTER TABLE CUST ADD CONSTRAINT C_FK FOREIGN KEY (c_w_id) REFERENCES WARE(w_id);
   Query OK, 0 rows affected

   ```

上一篇

[添加外键时报错，错误代码 ERROR 1215](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000217893)

下一篇

[执行 alter table modify column 修改列 size 时遇到的报错](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000476527) ![有帮助](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) 咨询热线
