添加唯一 ID 到现有记录和列类型修改
Adding unique IDs' to existing records and column type modification
我正在使用 PhpMyAdmin,其中我的 MySQL 数据库中有一个 table,其中每条记录都几乎相同 ID
并且该列是 varchar
没有自动递增。正如我从几个人那里听到的那样,这是一个非常糟糕的主意,我想修复它。
所以我有一个 table,称它为 old_table
,我想将它的 id
列更改为 int
自动递增的类型并分配一个唯一值每条记录。
可能吗?或者在 PhpMyAdmin 中实现它的最简单方法是什么?不幸的是,我在这方面没有太多经验,所以如果有人能告诉我正确的方法,我将不胜感激。
我有两个想法,但我不确定哪个是最好的,我如何在实践中做到这一点。
只需以某种方式编辑现有的 table,并为每个现有行添加一个唯一的 id 值(在 PhpMyAdmin 中)。
在同一个数据库中创建一个新的 table 并将内容从旧的 table 加载到具有唯一 id-s 的新的(在 PhpMyAdmin 中)。
不确定您是否可以从 PhpMyAdmin 内部执行此操作,因为我不知道您是否可以在那里执行 SQL 命令。但是你绝对可以通过一些 MySQL 界面来做到这一点,比如 MySQL Workbench http://dev.mysql.com/downloads/workbench/5.2.html.
您要做的是创建新的 table,并将 id 列设置为自动递增整数。然后将新 table 中的其余列设置为与旧 table 中相同的名称和数据类型。最后,您想要将旧 table 中除 id 之外的所有数据插入到新 table 中,就像这样...
insert into new_table (column1, column2, column3)
select column1, column2, column3 from old_table
这将select将column1、column2和column3中的数据放入新table中各自的列中,id将自动设置在新table中。
我正在使用 PhpMyAdmin,其中我的 MySQL 数据库中有一个 table,其中每条记录都几乎相同 ID
并且该列是 varchar
没有自动递增。正如我从几个人那里听到的那样,这是一个非常糟糕的主意,我想修复它。
所以我有一个 table,称它为 old_table
,我想将它的 id
列更改为 int
自动递增的类型并分配一个唯一值每条记录。
可能吗?或者在 PhpMyAdmin 中实现它的最简单方法是什么?不幸的是,我在这方面没有太多经验,所以如果有人能告诉我正确的方法,我将不胜感激。
我有两个想法,但我不确定哪个是最好的,我如何在实践中做到这一点。
只需以某种方式编辑现有的 table,并为每个现有行添加一个唯一的 id 值(在 PhpMyAdmin 中)。
在同一个数据库中创建一个新的 table 并将内容从旧的 table 加载到具有唯一 id-s 的新的(在 PhpMyAdmin 中)。
不确定您是否可以从 PhpMyAdmin 内部执行此操作,因为我不知道您是否可以在那里执行 SQL 命令。但是你绝对可以通过一些 MySQL 界面来做到这一点,比如 MySQL Workbench http://dev.mysql.com/downloads/workbench/5.2.html.
您要做的是创建新的 table,并将 id 列设置为自动递增整数。然后将新 table 中的其余列设置为与旧 table 中相同的名称和数据类型。最后,您想要将旧 table 中除 id 之外的所有数据插入到新 table 中,就像这样...
insert into new_table (column1, column2, column3)
select column1, column2, column3 from old_table
这将select将column1、column2和column3中的数据放入新table中各自的列中,id将自动设置在新table中。