从oracle迁移了几个表,这几个表有关系。
a表
id DECIMAL类型 主键b表
id DECIMAL类型 主键
a_id DECIMAL类型 外键现在我要把这些键的类型都改成int且能自动增加的应该怎么办?表中都有一些数据。
谢谢各位。

解决方案 »

  1.   

    建立schema,然后把数据倒入就可以了。
      

  2.   

    我没有按楼上说的做。我先删除了表中的外键,然后修改各个表主键的类型,然后再把外键重新建立。可以这个外键怎么也建不好。还请各位帮忙CREATE TABLE `tb_onlinesrc` (
      `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
      `online_id` int(11) unsigned NOT NULL DEFAULT '0',
      `uateam_id` int(11) unsigned NOT NULL DEFAULT '0',
      `src_path` varchar(100) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
      `time` datetime NOT NULL,
      PRIMARY KEY (`id`),
      KEY `Index_onlineid` (`online_id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1 ROW_FORMAT=REDUNDANT;CREATE TABLE `tb_online` (
      `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
      `name` varchar(30) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
      `version` varchar(10) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
      `explain` varchar(100) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
      `time` datetime NOT NULL,
      `img` varchar(100) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1 ROW_FORMAT=REDUNDANT;ALTER TABLE `tb_onlinesrc`
      ADD FOREIGN KEY (`ONLINE_ID`) REFERENCES `tb_online` (`ID`) ON DELETE CASCADE;
    增加外键总是出错,大家帮忙看看问题在什么地方。谢谢了
      

  3.   

    先把约束禁用,都修改为Int后,再起用约束。
      

  4.   

    按照wangtiecheng所说,禁用添加,再启用,可以加进去了。这样做有没有什么后遗症么?