代码之家  ›  专栏  ›  技术社区  ›  Jimit

SQL查询Alter Table MySql出错

  •  0
  • Jimit  · 技术社区  · 15 年前

    ALTER TABLE property_res_details 
    ADD CONSTRAINT PropertyIdLink FOREIGN KEY ( Property_ID )  
    REFERENCES properties( Property_ID )  ON DELETE CASCADE ;
    
    
    #1005 - Can't create table './resfi/#sql-10e1_8df.frm' (errno: 150)
    

    我可能做错什么了?

    2 回复  |  直到 12 年前
        1
  •  2
  •   doza    15 年前

    This page 可能会给你线索。。。

    既然你要加外键,听起来很有意义。

    SHOW ENGINE INNODB STATUS;
    

    查看可能导致您看到的错误的最新约束错误。

    如果你试着

    SET FOREIGN_KEY_CHECKS = 0; 
    

        2
  •  0
  •   intgr    15 年前

    是啊,你不喜欢MySQL的错误消息吗。

    ADD CONSTRAINT PropertyIdLink FOREIGN KEY ( Property_ID )  
    REFERENCES properties( Property_ID ) ON DELETE CASCADE;
    

    确保 Property_ID 列具有 在两张桌子上。这就是我过去为自己修正类似错误的方法。