I'm trying to use SVN with Toad for MySQL to keep two DBs on two development machines in sync. When I modify a table on one machine Toad changes the appropriate scripts and checks them in just fine.
On the other machine, when I try "Update database" or "Updata schema" or even "Get Latest" on the specific table, I get a window which shows that the table has changed, but when I click OK I get an empty script window that says -- no changes detected
(and the OK button is disabled). When I try to alter the table manually, Toad says that it doesn't match with SVN and wants me to update it, but that just brings me to the first window. And since the first window cannot be closed successfully (it can be only cancelled), I can't even edit the table.
Has anyone had this before? What am I doing wrong?
Added: Another problem: I added a new table on one of the machines. When I try to update the other one, I get MySQL Database Error: Table 'my.table' doesn't exist
.
Added 2: Ok, it seems the problem is buggy Toad. Here's something else I found: Even if I use just one machine to modify the DB, it still says to me that I have to update the table or SVN, because they are different (however they can't be different, the only changes I have done is from this machine and they are checked in). If I try to update from SVN, I get the same dead-end dialog. If I update to SVN, then inspecting the changeset with TortoiseSVN reveals one significant change:
Before: ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
After: ) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8;
This should be pretty self-explanatory. It doesn't explain the "table doesn't exist", but I suspect it's just another bug. The good news - the people from Toad already know about it and say they will fix it for the next release.