2

是否有专注于获取两个数据库导出、查找差异并为其创建更新/更改语句的库?基本上是从出口 A 到出口 B 的更新脚本。

例如这个:

-- Version 1
CREATE TABLE IF NOT EXISTS `mytable` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `title` varchar(255) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

-- Version 2
CREATE TABLE IF NOT EXISTS `mytable` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `title` varchar(255) NOT NULL,
  `description` text,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

-- Would result in this:
ALTER TABLE `mytable`
  ADD `description` text;

编辑:这个问题与 MySQL 的有关,而不是工具。

4

3 回答 3

1

有一些MySQL比较工具。

于 2012-06-12T13:22:57.333 回答
0

RedGate http://www.red-gate.com/products/sql-development/sql-compare/index-b提供了一个非常好的和稳定的解决方案。

我相信 Visual Studio 2010 的终极版也可以比较模式,但我不确定它是否会为您生成 ALTER 脚本。

编辑: 我也只记得这个http://opendbiff.codeplex.com/但是我上次看它时运气不太好。

于 2012-06-12T13:12:17.060 回答
0

这个节点模块可能很有用。它区分实时数据库,但是从 SQL 转储创建实时数据库应该很简单。

https://github.com/contra/dbdiff

于 2017-09-21T13:04:33.403 回答