如果我有一个实时数据库,我想从一个表中删除一个唯一的键,无论它是一个非复合唯一的唯一钥匙或复合材料,会带来任何问题吗?
我认为这不应该构成任何问题,但我想在这里仔细检查DB专家。
至于复合唯一的密钥问题,我想将其丢弃,因为我想在该复合唯一键中添加新列。
所以:
UNIQUE KEY `composite_key` (`username`, `email`),
成为以下:
UNIQUE KEY `composite_key` (`username`, `email`, `age`),
有没有办法将列"添加"到复合唯一键?还是我先删除它,然后定义/添加这3列的新唯一键组成?再说一次,如果我这样做会有问题吗?
谢谢。
如果执行取决于密钥的查询,则在删除旧密钥和添加新密钥之间可能存在性能问题。但是否则我认为这应该是安全的。如果外键需要键,我怀疑(或至少希望(它不允许您删除它。
,您可以先添加新键,而不是删除旧键,而是添加新键(您必须给它给它一个不同的名称(,然后删除旧的键。唯一的缺点是在重叠期间增加存储。