【问题标题】:How to drop and recreate the exact index如何删除并重新创建确切的索引
【发布时间】:2013-10-18 21:20:09
【问题描述】:

我必须更改我的列数据类型并对其进行索引。更改列给我错误,我需要删除索引,禁用将不起作用。

问题是我将如何自动删除并重新创建确切的索引?我可以放弃它们,但我不知道我将如何重新创建它们。

干杯

【问题讨论】:

    标签: sql indexing sql-drop


    【解决方案1】:

    您使用的是什么 DBMS?一些数据库管理系统能够编写其数据库对象的脚本,但它们之间的命令不同。

    如果你可以创建一个脚本,你会这样做,删除索引,更改字段的数据类型,保存,然后运行脚本以重新创建索引。

    如果您不能使用您的特定 DBMS 为您的索引创建脚本,您必须手动记下所有相关字段和设置,然后删除索引,更改字段的数据类型,保存,然后根据您的笔记手动重新创建索引。

    【讨论】:

      【解决方案2】:

      一种方法是创建新的索引字段,然后执行如下更新查询:

      UPDATE yourTable
      SET newIdx = oldIdx
      

      然后,一旦新索引被填充,只需将其设置为索引字段并删除旧字段。

      【讨论】:

      • 这要求创建一个 field 并删除它的前身,并且不允许更改索引字段的数据类型
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-28
      • 2021-08-04
      • 1970-01-01
      相关资源
      最近更新 更多