zoukankan      html  css  js  c++  java
  • MYSQL-不能创建表

    Can't create table '.	icketuser_role.frm' (errno: 121)

    语法是对的,但显示上面的错误


    原因有三种


    1、表名重复

    2、以该名字命名的表之前创建过后来删除了,但是对应的.frm文件还留在磁盘上

    3、主键名字在全数据库范围内不是唯一的



    我出现的时候是第三个


     KEY `FK_USER_ROLE1` (`USER_ID`),
      KEY `FK_USER_ROLE2` (`ROLE_ID`),
      CONSTRAINT `FK_USER_ROLE1` FOREIGN KEY (`USER_ID`) REFERENCES `USERS` (`USER_ID`),
      CONSTRAINT `FK_USER_ROLE2` FOREIGN KEY (`ROLE_ID`) REFERENCES `ROLE` (`ROLE_ID`)
    ) ENGINE=InnoDB AUTO_INCREMENT=25 DEFAULT CHARSET=utf8 COMMENT='用户角色资料表';
    

    方法是找到F:programmysql5.0data   其他数据库的user_role.frm 删掉  不过还不如给自己的换个名字呢。


    DROP TABLE IF EXISTS `USER_ROLE`;
    CREATE TABLE `USER_ROLE` (
      `ID` int(11) NOT NULL AUTO_INCREMENT,
      `USER_ID` int(11) NOT NULL DEFAULT '0' COMMENT '用户代码',
      `ROLE_ID` int(11) DEFAULT NULL COMMENT '角色代码',
      `STATUS` char(1) DEFAULT NULL COMMENT '状态',
      PRIMARY KEY (`ID`),
     UNIQUE KEY(`USER_ID`,`ROLE_ID`),
      CONSTRAINT `MFK_USER_ROLE1` FOREIGN KEY (`USER_ID`) REFERENCES `USERS` (`USER_ID`),
      CONSTRAINT `MFK_USER_ROLE2` FOREIGN KEY (`ROLE_ID`) REFERENCES `ROLE` (`ROLE_ID`)
    ) ENGINE=InnoDB AUTO_INCREMENT=25 DEFAULT CHARSET=utf8 COMMENT='用户角色资料表';


    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    捋一下Redis
    docker 的简单操作
    opencv的级联分类器(mac)
    python日常
    pip安装显示 is not a supported wheel on this platform.
    字节流与字符流的区别详解
    请求转发和重定向的区别及应用场景分析
    Eclipse的快捷键使用总结
    Eclipse给方法或者类添加自动注释
    IntelliJ IDEA 连接数据库 详细过程
  • 原文地址:https://www.cnblogs.com/france/p/4808549.html
Copyright © 2011-2022 走看看