使用MySQL数据库时遇到这样的问题:SQL执行错误#1005,从数据库的响应:Can't create table (errno:121)

数据库代码如下:
USE jsp_db;
CREATE TABLE banji (
username varchar(120) NOT NULL,
password varchar(120) DEFAULT NULL,
name varchar(30) DEFAULT NULL,
sex varchar(1) DEFAULT NULL,
age varchar(3) DEFAULT NULL,
banji varchar(30) DEFAULT NULL,
photo varchar(120) DEFAULT NULL,
PRIMARY KEY (username),
UNIQUE KEY name (name)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;

你的代码没有任何问题,我已经试过了,现在最可能的原因是是数据库出现问题了。最好重装一下吧。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-08
看到网上这么写的 应该先删除 在建立一遍数据库
drop database xxxx

create database xxxx

具体内容如下
我安装了DOS之家的一键还原,每当感觉系统允许慢或有病毒迹象的时候就来个系统还原,这样,我的系统就到了最原始的洁净状态,呵呵

每当还原之后,就会发现Eclipse报SQLException,说找不到数据库,想起来是数据库要重新建立。这时候用“create database BBS”命令建立数据库成功,但再向BBS数据库建表时则出现错误提示:“ERROR 1005 (HY000):Can't create table 'bbs.article' (errno:121)”。原来我的MySQL数据文件是存在了E盘,系统还原后E盘的数据文件还存在,所以再建同名的数据文件则会出现错误。解决办法就是:把先删掉当前数据库,之再重新建数据库、建表即可。本回答被提问者采纳
第2个回答  2010-12-26
进过测试, 你的sql语句没有问题, 可以换到命令行执行一下, 看该问题是否存在, 是不是与客户端有关系.本回答被网友采纳
相似回答