最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL錯誤1005(errno: 150)的原因分析與解決方案

 更新時間:2025年12月09日 09:14:49   作者:0.99棧小臻  
本文詳細介紹了MySQL外鍵約束創(chuàng)建失敗錯誤1005的原因分析及解決方案,主要包括數(shù)據(jù)類型不匹配、被引用列不是主鍵或唯一鍵、存儲引擎不支持外鍵、數(shù)據(jù)不一致問題和表不存在或列名錯誤等五個方面,需要的朋友可以參考下

這個錯誤是MySQL中非常常見的外鍵約束創(chuàng)建失敗錯誤。

錯誤本質

錯誤信息

1005 - Can't create table 'zkac.#sql-1350_1' (errno: 150)

這表示MySQL在嘗試創(chuàng)建表或添加外鍵約束時失敗了,具體是外鍵約束創(chuàng)建過程中遇到了問題。

根本原因排查清單

1. 數(shù)據(jù)類型不匹配(最常見原因)

檢查方法

SHOW CREATE TABLE navigation_target_point_info;
SHOW CREATE TABLE task_type_info;
  • 必須滿足
    • ntpi_task_type_namerobot_task_type_name的數(shù)據(jù)類型完全一致
    • 對于字符串類型,長度、字符集和排序規(guī)則也必須一致

2. 被引用列不是主鍵或唯一鍵

檢查方法

SHOW INDEX FROM task_type_info WHERE Key_name = 'PRIMARY' OR Column_name = 'robot_task_type_name';

解決方案

-- 如果不是主鍵或唯一鍵,需要添加
ALTER TABLE task_type_info ADD UNIQUE INDEX idx_robot_task_type_name (robot_task_type_name);

3. 存儲引擎不支持外鍵

檢查方法

SHOW TABLE STATUS LIKE 'navigation_target_point_info';
SHOW TABLE STATUS LIKE 'task_type_info';

解決方案

-- 轉換為InnoDB引擎
ALTER TABLE navigation_target_point_info ENGINE=InnoDB;
ALTER TABLE task_type_info ENGINE=InnoDB;

4. 數(shù)據(jù)不一致問題

檢查方法

-- 查找外鍵表中有但主鍵表中沒有的值
SELECT DISTINCT ntpi.ntpi_task_type_name 
FROM navigation_target_point_info ntpi
LEFT JOIN task_type_info tti ON ntpi.ntpi_task_type_name = tti.robot_task_type_name
WHERE ntpi.ntpi_task_type_name IS NOT NULL AND tti.robot_task_type_name IS NULL;
  • 解決方案
    • 刪除無效數(shù)據(jù)
    • 或在主表中添加缺失的記錄

5. 表不存在或列名錯誤

檢查方法

-- 確認表和列是否存在
SELECT * FROM information_schema.COLUMNS 
WHERE TABLE_SCHEMA = 'zkac' 
AND TABLE_NAME IN ('navigation_target_point_info', 'task_type_info')
AND COLUMN_NAME IN ('ntpi_task_type_name', 'robot_task_type_name');

以上就是MySQL錯誤1005(errno: 150)的原因分析與解決方案的詳細內容,更多關于MySQL錯誤1005(errno: 150)的資料請關注腳本之家其它相關文章!

相關文章

最新評論

岳池县| 韩城市| 比如县| 乌鲁木齐县| 连云港市| 平遥县| 图木舒克市| 宁安市| 志丹县| 青龙| 治县。| 南京市| 武穴市| 永宁县| 屏南县| 霍邱县| 宜兰市| 巴彦县| 锡林郭勒盟| 如东县| 蓝田县| 吉木乃县| 阳泉市| 亚东县| 洪雅县| 云梦县| 同心县| 丰镇市| 阳谷县| 青州市| 沙田区| 澎湖县| 马尔康县| 石家庄市| 云林县| 林芝县| 渝北区| 离岛区| 长丰县| 安阳县| 开原市|