覆盖 sql table 结构

Overriding sql table structure

Table 1

CREATE TABLE `test`.`table_1` (
  `id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  `name` VARCHAR(45),
  PRIMARY KEY (`id`)
)
ENGINE = InnoDB;

Table 2

CREATE TABLE `test`.`table_2` (
  `id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  `name` VARCHAR(256) NOT NULL,
  `number` INTEGER UNSIGNED NOT NULL,
  PRIMARY KEY (`id`)
)
ENGINE = InnoDB;

我想要得到的结果: table1table2应该是一样的,table1在我同事工作区,我想将其更改为 table 2 而不丢失数据

您可以使用 alter table。应该没问题:

alter table table_1 modify name varchar(256) not null;

alter table table_1 add number integer unsigned not null;

注意:not null 实际上假定您的 table 为空(对于 number)并且 name 没有 NULL 值。否则,您将需要一个默认值。