- ベストアンサー
列の位置を指定した表構造の変更はできないでしょうか
いつもお世話になっております。 列の追加や、列の並びの変更について質問があります。 ALTER TABLE tb ADD~ やALTER TABLE tb MODIFY~で表の構造を変更する場合、列の位置を指定することはできないでしょうか。 たとえば最後の位置とか、○番目とか、×列の後のように指定して 列を追加したり、列の位置を変更する、という意味です。 マニュアルを調べてみたのですがわからず困っております。 どうか、よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
先日、同じような質問がありましたが…… 表を再定義するしか方法はないです。 1. 新しい定義で仮表を作成する 2. 元表のデータを仮表に移動する(INSERT ~ SELECT) 3. 元表を削除(DROP)する 4. 仮表を元表の名前でリネーム(RENAME)する 5. 制約や索引などを追加する といった手順になります。 オンライン表再定義という方法もあります。 興味があれば検索してみてください。 # この手の要望って結構多いのですねえ
その他の回答 (1)
- SaKaKashi
- ベストアンサー率24% (755/3136)
回答No.1
RDBで項目の列を指定することにどんな意味があるのでしょうかね。
質問者
お礼
ご回答ありがとうございました。 確かに、よく考えてみると、列の並びは確定していれば何でも同じなのかもしれませんね。意味がない、といえば意味がないのかもしれませんね。
お礼
dda167 様 本当にいつもお世話になります。また、お礼が遅くなり申し訳ありませんでした。 再定義するしかないのですね。 MySQLではFIRSTとか、AFTERなどで位置が自由に指定できたので、Oracleでできないものか、と調べていました。 何か自分なりに優先順位を付けた順に並べたほうが、名違えが少なく、扱いやすいと思ったもので。 ご丁寧にありがとうございました。