Hinernate进行mysql数据库的逆向工程无法生成主外键关系


(1)我们在进行SSH开发大※的项目的时候,使用myeclipse自带的hibernate的逆向工程工具时,发现竟然无法生成one-to-one  one-to-many等的主外键关系,明明的数据库建时已经有主外键关系了.为啥逆向生成时就不行了呢?

(2)首先说一下,我使用的是PHP开发环境Appserv自带的MySQL数据库,不是单独安装的;

(3)这是因为数据库引擎的问题,

我们可以在sql命令行中输入命令:show engines;

Hinernate进行mysql数据库的逆向工程无法生成主外键关系_第1张图片

可以看到default默认的是MyISAM;


(3)”MyISAM数据库引擎不支持事务处理也不支持外来键”我们应该改为InnoDB类型的数据库引擎;

(4)修改数据库的引擎有两种方法,一种是使用命令alter table 表名 type=InnoDB;来修改,但是我没有尝试成功;

第二种是在配置文件汇总找到my.ini文件 ,一看就懂了   把注释去掉 ,重新启动数据库就很好了


(5)但是使用这种方式的一种错误就是,会出现服务器无法启动的情况!

Hinernate进行mysql数据库的逆向工程无法生成主外键关系_第2张图片



如果出现上述错误 那就建议你 更新单独的mysql数据库吧!我就是更新了单独的数据库 之后 mysql的数据库引擎就是InnoDB了  就可以创建对应关系了!


你可能感兴趣的:(数据库,mysql)