我的mysql的引擎是isam,不支持外键,怎样将它转成inodb?
有朋友说输入alter table foo type=inodb,但是我dos下控制mysql输入"alter table foo type=inodb;",出现 Unknown table engine 'inodb',没有转换成功啊?
怎么轮换?
有朋友说输入alter table foo type=inodb,但是我dos下控制mysql输入"alter table foo type=inodb;",出现 Unknown table engine 'inodb',没有转换成功啊?
怎么轮换?
是InnoDB 另外修改表引擎 最好用 engine
alter table tbname engine=Innodb;
有没有其他的办法呢,难道只有这么一个一个表用DOS命令手动来转换吗?
我是在学hibernate,在他的配置的文件上有没有对这个选项的配置呢?
我安了一个sqlyong,怎么操作啊?
对已经生成的表,没有办法,你只能一个一个进行转换。 不过一般的方法是show tables把所有的表显示出来 然后你可以在字处理软件比如EXCEL中生成所有表的 alter table语句。至于在配置文件my.ini / my.cnf 中你可以添加默认的表的存储引擎为innodb,不过这个只是个默认值,对现有表并不起转换作用。仅对新建表时不注册具体存储引擎时才会以这个默认存储引擎建表。
我刚刚下载了那个SQLyog,确实很好用啊。不过要钱。
那就用phpmyadmin吧,很简单。点击表的“操作”然后将他的存储方式选择 InnoDB 后点击执行 就可以了。
MyISAM
</option>
<option value="memory" title="Hash based, stored in memory, useful for temporary tables">
MEMORY
</option>
<option value="blackhole" title="/dev/null storage engine (anything you write to it disappears)">
BLACKHOLE
</option>
<option value="archive" title="Archive storage engine">
ARCHIVE
</option>
<option value="federated" title="Federated MySQL storage engine">
FEDERATED
</option>
<option value="mrg_myisam" title="Collection of identical MyISAM tables">
MRG_MYISAM
</option>