将全新列添加到现有表中

时间:2018-05-22 23:09:35

标签: sql database

在数据库世界中,这有多大的禁忌?假设我启动我的应用程序,然后决定我想记录有关实体的其他属性。是否要不惜一切代价在现有表格中添加一个全新的列?或者没什么大不了的?

2 个答案:

答案 0 :(得分:0)

在MySQL(或大多数现代数据库)中添加列非常简单。您使用像

这样的命令
ALTER TABLE table
ADD [COLUMN] column_name column_definition [FIRST|AFTER existing_column];

(reference)

请注意,如果向具有大量数据行的现有表添加列,则操作可能需要一些时间。首先在测试环境中练习并计划生产环境中的停机时间。

答案 1 :(得分:0)

是否应该不惜一切代价添加新列?好吧,没有。

是否应该避免添加新列?嗯,是的。

首先,这是一项昂贵的操作,通常需要重写整个表格。出于效率原因,通常最好创建一个新表并将数据加载到新表中。

其次,新列通常是数据模型出错的问题。希望在应用程序完成之前很好地理解数据库的结构。

这是否意味着添加列总是坏的?当然不是。新事物出现了,可能已经错过了一些小事,可能会出现一些不一致的情况。但是,它不应该随意进行,因为它可能表明底层数据模型存在更大的问题。如果实时系统中有大量数据,也应该小心。