对mysql的数据库表结构做了一些改变,能否像微软sql那样导出一个脚本来自动将这些改变更新到旧数据库上?
比如:在java程序中执行sql语句或者前端mysql工具软件增加了一些数据库表,对一些表增加、删除字段,增加,删除索引等等,好像微软的sql可以在企业管理器中导出脚本文件,管理员只需要在客户那里执行这个脚本文件就能完成旧数据库表升级,那么mysql怎样做到这一点?
比如:在java程序中执行sql语句或者前端mysql工具软件增加了一些数据库表,对一些表增加、删除字段,增加,删除索引等等,好像微软的sql可以在企业管理器中导出脚本文件,管理员只需要在客户那里执行这个脚本文件就能完成旧数据库表升级,那么mysql怎样做到这一点?
mysql> show create table t1;
+-------+-----------------------------------------
| Table | Create Table
+-------+-----------------------------------------
| t1 | CREATE TABLE `t1` (
`id` int(11) NOT NULL,
`col` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 |
+-------+-----------------------------------------
1 row in set (0.00 sec)mysql>
请问楼上是怎样给用户做数据库升级的?
当然你可以把用户的表结构从schema表中取得后和你的进行比较,然后自己生成alter table 语句。
==============================================================================
上面这句话中“...进行比较,然后自己生成alter table 语句”是指自己手工写,还是说能自动生成?