かなり大きなデータベースを SQL Server から MySQL に移行することができました。テーブルには、別のテーブルの外部キーである主キーとしての ID に基づく関係があるため、移行中に主キーを自動インクリメントに設定しませんでした。
新しいレコードを追加するために、すべてのテーブルの主キー 'id' 列を自動インクリメントに変更しますが、各テーブルの id 列の最後の最大数から開始します。
私がすでに持っている関係を失うことなくこれを行うための最良の方法は何ですか?
更新:自動インクリメントを追加しようとすると、次のエラーが表示されます:
ERROR 1067: Invalid default value for 'id'
SQL Statement:
ALTER TABLE `skandium`.`brands` CHANGE COLUMN `id` `id` INT(11) NOT NULL DEFAULT '0' AUTO_INCREMENT
ERROR 1050: Table 'brands' already exists
SQL Statement:
CREATE TABLE `brands` (
`id` int(11) NOT NULL DEFAULT '0',
`brand` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1