相关疑难解决方法(0)

在Oracle中重新排序表的列

我有一个包含50多列的表,我需要交换前两列的顺序.使用Oracle实现此目的的最佳方法是什么?假设表名是ORDERDETAILS,实际上,前两列是ITEM_ID和ORDER_ID.重命名完成后,表名仍应为ORDERDETAILS,但前两列将为ORDER_ID和ITEM_ID.FWIW,列类型和其余列及其顺序是irelevent.

如果我错了,请纠正我,但我认为一般步骤是:

  1. 重命名现有表.
  2. 删除主键约束.
  3. 使用正确的列顺序重新创建表.
  4. 项目清单
  5. 运行INSERT INTO .. SELECT以在步骤#3中将数据从temp移动到表.
  6. 删除临时表.

我对Oracle的经验很少,所以也许我错过了一两步.

主键是否意味着Oracle中的索引?删除主键是否也会丢弃索引?

SQL示例非常感谢.

编辑:非诚挚地感谢那些质疑为什么需要而不是提供帮助的人.要回答你为什么需要这样做的问题:我遵循其他人的命令,他说我需要这样做,而且列的顺序很重要.我对此的想法/意见是无关紧要的.

sql oracle rename

37
推荐指数
4
解决办法
9万
查看次数

标签 统计

oracle ×1

rename ×1

sql ×1