中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

mysql錯誤1022如何解決

發布時間:2023-02-16 10:55:35 來源:億速云 閱讀:180 作者:iii 欄目:MySQL數據庫

本篇內容主要講解“mysql錯誤1022如何解決”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“mysql錯誤1022如何解決”吧!

mysql錯誤1022是外鍵名稱重復導致的,其解決辦法:1、通過“select * from INFORMATION_SCHEMA.KEY_COLUMN_USAGE  where CONSTRAINT_NAME='...'”命令查找重復外鍵名稱;2、將外鍵名重新命名即可。

mysql報錯Error Code: 1022. Can't write; duplicate key in table `xxx`

說明:此錯誤是外鍵名稱重復了

查找重復外鍵名稱,哪里被用到了,sql如下:

select * from INFORMATION_SCHEMA.KEY_COLUMN_USAGE  where CONSTRAINT_NAME='重復的外鍵名稱'

如果沒問題,則重新命名即可。

相關拓展:

1 外鍵的定義

外鍵是某個表中的一列,它包含在另一個表的主鍵中。

外鍵也是索引的一種,是通過一張表中的一列指向另一張表中的主鍵,來對兩張表進行關聯。

一張表可以有一個外鍵,也可以存在多個外鍵,與多張表進行關聯。

2 外鍵的作用

外鍵的主要作用是保證數據的一致性和完整性,并且減少數據冗余。

主要體現在以下兩個方面:

  • 阻止執行

從表插入新行,其外鍵值不是主表的主鍵值便阻止插入。

從表修改外鍵值,新值不是主表的主鍵值便阻止修改。

主表刪除行,其主鍵值在從表里存在便阻止刪除(要想刪除,必須先刪除從表的相關行)。

主表修改主鍵值,舊值在從表里存在便阻止修改(要想修改,必須先刪除從表的相關行)。

  • 級聯執行

主表刪除行,連帶從表的相關行一起刪除。

主表修改主鍵值,連帶從表相關行的外鍵值一起修改。

3 外鍵創建限制

父表必須已經存在于數據庫中,或者是當前正在創建的表。

如果是后一種情況,則父表與子表是同一個表,這樣的表稱為自參照表,這種結構稱為自參照完整性。

必須為父表定義主鍵。

外鍵中列的數目必須和父表的主鍵中列的數目相同。

兩個表必須是 InnoDB 表,MyISAM 表暫時不支持外鍵。

外鍵列必須建立了索引,MySQL 4.1.2 以后的版本在建立外鍵時會自動創建索引,但如果在較早的版本則需要顯式建立。

外鍵關系的兩個表的列必須是數據類型相似,也就是可以相互轉換類型的列,比如 int 和tinyint 可以,而 int 和 char 則不可以。

到此,相信大家對“mysql錯誤1022如何解決”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

西吉县| 凌源市| 宜都市| 泽库县| 宁城县| 谷城县| 遵义县| 镇康县| 玛曲县| 弥勒县| 美姑县| 凤冈县| 潍坊市| 福鼎市| 图片| 毕节市| 井冈山市| 东光县| 拉孜县| 上饶县| 东宁县| 万山特区| 井冈山市| 赤城县| 淮南市| 隆德县| 朝阳县| 招远市| 永福县| 松潘县| 金塔县| 宁强县| 杂多县| 越西县| 株洲市| 山东省| 唐山市| 柘城县| 明星| 宜章县| 塔城市|