是否在配置文件里skip-innodb了
解决方案 »
- 小妹请教调用带参数的存储过程报错问题!
- 有方法没有在Windows 版的 MySQL的库里同时存在表 a 和表A?
- mysql怎么设置表宽度?
- 怎么用select语句显示表s中2到4条记录?
- 有没有办法动态监控数据库的变化?
- 同样的代码,输到MySQL里面竟然会报错,我大怒!!!
- 请问各位老大,jsp+MySql的效率如何?
- SQLyog远程管理MYSQL数据库为什么不能用
- 把数据从.txt文件输入mysql的问题
- 在win下编的vc程序,怎样使它更新web服务器上的mysql数据库,(odbc,mysql api 皆可),万分感谢!
- 如何 取出2006-01-01 日期后的所有记录
- MySQL的sql查询语句问题,有关join
Enables the InnoDB storage engine, if the server was compiled with InnoDB support. Use --skip-innodb to disable InnoDB.
但是又出了点问题
create table a (id1 int not null,name varchar(20),primary key(id1))type=InnoDB;
create table b(id2 int not null,lessonname varchar(20),primary key(id2))type=InnoDB;alter table b
add constraint FK
foreign key (lessonname)
references a(name);
像上面的语句,alter语句会报错,去掉create的type=InnoDB
就成功,这个怎么解决?我们一定要显示的申明InnoDB。求教
ALTER TABLE tbl_name
ADD [CONSTRAINT symbol] FOREIGN KEY [id] (index_col_name, ...)
REFERENCES tbl_name (index_col_name, ...)
[ON DELETE {RESTRICT | CASCADE | SET NULL | NO ACTION}]
[ON UPDATE {RESTRICT | CASCADE | SET NULL | NO ACTION}]
create table b(id2 int not null,lessonname varchar(20),primary key(id2)) engine=innodb;alter table b
add index FK (lessonname),
add constraint FK
foreign key (lessonname)
references a (name);
这样还是不行啊!还是alter出错 ERROR 1005: Can't create table '.\test\#sql-c6c_d.frm' (errno: 150)
如果你的引擎是默认的MYISAM:
CREATE TABLE `address` (
`address_id` bigint(20) NOT NULL auto_increment,
`ip_address` varchar(255) NOT NULL default '',
`type` int(11) NOT NULL default '0',
`rule_id` bigint(20) NOT NULL default '0',
PRIMARY KEY (`address_id`),
KEY `FKBB979BF42AEABE09` (`rule_id`)
) ENGINE=innodb DEFAULT CHARSET=latin1;
执行这个教本后,这个表的属性还是INNODB的,可是你数据库的引擎是MYISAM,也就是说他没有什么意义。如果你是用其它的工具,不选的话,它默认就是数据库引擎的属性。
还有,你字符集用的是LATION1,我认为你不要用它,对以后的迁移不好。