0

我正在将较新版本的 ISPConfig 中的空表的模式复制到旧版本的数据库中。在较新的版本中,有两个键和一个主键。这是包含数据的表中缺少的第二个键。如您所见,它显示“MUL”,表示它是非唯一键:

*************************** 10. row ***************************  
  Field: type  
   Type: enum('alias','aliasdomain','forward','catchall')  
   Null: NO  
    Key: MUL  
Default: alias  
  Extra:  

在另一张表中,缺少 MUL 数据:

*************************** 10. row ***************************  
  Field: type  
   Type: enum('alias','aliasdomain','forward','catchall')  
   Null: NO  
    Key:  
Default: alias  
  Extra:  

有什么方法可以将“MUL”添加到“类型”列而不会丢失数据?

4

2 回答 2

0

您可以使用ALTER TABLEwithDROP KEY删除一个索引,然后使用 . 添加另一个索引ADD KEY

重建(新)索引可能需要一些时间,但不会影响数据库中的数据。

于 2012-09-09T21:59:15.680 回答
0

用于SHOW CREATE TABLE tablename查看每个表中的所有索引。然后使用ALTER TABLE oldtable ADD INDEX ...将缺失的索引添加到旧表中。

于 2012-09-09T22:18:09.153 回答