No.4ベストアンサー
- 回答日時:
alter table 表名
drop column 列名;
はOracleのバージョン8.1.5からです。
それ以前の場合は表を再作成します、
まず、既存の表名を変更して、
create table as select します。その際に削除したい列は抜かします。
1.rename 既存の表名 to 新しい表名;
2.create table 既存の表名
as select 必要な列のみ記述 from 新しい表名;
ただ、注意点としては「再作成」ですので、制約はNOT NULL以外全てなくなります。
この回答への補足
バージョンは8.16です。いろいろ試したのですができません。 とりあえずbourbonさんの解答を参考にしてなんとか思う通りのことは出来ました。列を削除できないことでなにか心当たりがありましたらお願いします。
補足日時:2003/01/16 17:04No.6
- 回答日時:
うーん、なるほど・・・。
初めて見ました。。。
申し訳ないんですが、環境を聞かせてもらってもいいですか?
OSとかOracleのVersionなど、分かる範囲で構いませんので、
お願いします。
ちょっと調べてみます。
よろしくお願いします。
何度も回答ありがとうございます。
本当にすいません!!
以前Versionを8.16と補足したのですが・・・
改めて管理担当者に問い合わせたところ8.05ということでした。
もうすでに良回答もらってたんですね、こちらの認識不足でbourbonさんにいらぬ手間をお掛けしてしまいましたね。
もっと慎重に質問しなくてはと反省しております。
超初心者なのでこれからもいろいろと質問することもあると思いますが、またお願いします。
No.5
- 回答日時:
ORA-00905のエラーは構文に必須項目が抜けているために起こるエラーです。
なので、構文通りにSQL文を記述できていない可能性があります。
ですので、
alter table 表名 drop column 列名;
と構文通りに記述して頂ければ、削除はできると思います。
質問されているコメント欄には間違った構文が掲載されていますので↓
> Sql*pLUS画面
> SQL> alter table test drop(retu); ←この用に入力
> alter table test drop(retu)
構文どおりに行ってもできないということでしたら、その状態を
掲載してください。よろしくお願いします。
この回答への補足
何度も回答ありがとうございます。
実はあれから他のテーブルの列を削除しないといけないことがありまして
alter table test drop column retu;
と入力したところ
Oracle SQL*Plus画面--------------
SQL> alter table test drop column retu;
alter table test drop column retu
*
エラー行: 1: エラーが発生しました。
ORA-00905: キーワードがありません。
SQL>
--------------------------------
やはり同じエラーが出るようです。
列の追加や属性の変更はできるのですが・・・
またまれに
DROP TABLE 表名;
もできません、意味のないこととは知りつつも大文字にしてみたり小文字にしてみたりとそんなこともやってます。
何か思い当たることがありましたらよろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
10代と話して驚いたこと
先日10代の知り合いと話した際、フロッピーディスクの実物を見たことがない、と言われて驚きました。今後もこういうことが増えてくるのかと思うと不思議な気持ちです。
-
一番好きな「クリスマスソング」は?
街に出ればクリスマスソングを聞かない日はないくらい、 いろんな曲がかかっていますよね。 あなたが一番好きな「クリスマスソング」を教えてください!
-
【大喜利】看板の文字を埋めてください
旅行先でほぼ消えかけている看板に出会いました。 何を気を付ければいいのか穴埋めをして教えてください。
-
自分の通っていた小学校のあるある
進学したり大人になってから、「あれって自分の小学校だけだったのかな」と思うことありますよね。 逆に「他の小学校ってそんなことするの!?」と思ったり。 そんな「自分の通っていた小学校」のあるあるを教えてください!
-
我がまちの「給食」自慢を聞かせてっ!
富山県の給食には「ベニズワイガニ」が出る、、、なんて話を聞いたことがあります。 日本全国「え、給食にそれ出るの!?」な驚きメニューがまだまだあるはず!
-
CASE文のエラーについて
Oracle
-
ORA-00959: 表領域'****'は存在しません
Oracle
-
PL/SQLのコンパイルエラーについて(ignored)
Oracle
-
-
4
「ORA-00907: 右カッコがありません」について
Oracle
-
5
MERGE文について
Oracle
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・2024年に成し遂げたこと
- ・3分あったら何をしますか?
- ・何歳が一番楽しかった?
- ・治せない「クセ」を教えてください
- ・【大喜利】看板の文字を埋めてください
- ・【大喜利】【投稿~12/17】 ありそうだけど絶対に無いことわざ
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・【穴埋めお題】恐竜の新説
- ・我がまちの「給食」自慢を聞かせてっ!
- ・冬の健康法を教えて!
- ・一番好きな「クリスマスソング」は?
- ・集合写真、どこに映る?
- ・自分の通っていた小学校のあるある
- ・フォントについて教えてください!
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・10代と話して驚いたこと
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
CLOB型へのINSERT
-
テーブル名を[]でくくらないと...
-
count(1)とcount(*)の違い
-
コンポジット型の変数?
-
Oracle テーブルの列削除
-
SQLのto_char関数の未定義エラー
-
1つのテーブル・2つの列を結合...
-
Oracle複数の表をもとにmerge文...
-
主キーが二つのテーブルのselec...
-
Viewにインデックスは張れ...
-
データを削除しても表領域の使...
-
Data Pump で大量データインポ...
-
異なるスキーマからデータを抽...
-
oracleのimpdpでORA-39166
-
INDEXの無効化
-
テーブルからのselectにおいて...
-
ORA-00959: 表領域'****'は...
-
ACCESS 複数テーブル・複数フィ...
-
検索結果の列数を動的に変更したい
-
select insert 句
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
CLOB型へのINSERT
-
truncate文で全テーブルを一気...
-
oracleのプライマリ・キー名の変更
-
テーブル名を[]でくくらないと...
-
count(1)とcount(*)の違い
-
Oracle複数の表をもとにmerge文...
-
コンポジット型の変数?
-
Oracle テーブルの列削除
-
主キーが二つのテーブルのselec...
-
oracle sqlで先頭の1件を取得
-
1つのテーブル・2つの列を結合...
-
SQLのto_char関数の未定義エラー
-
複数テーブルのUPDATE
-
CASCADE CONSTRAINTSについて
-
sqlplusで実行したSQLの結果を...
-
Oracle上のテーブルからCREATE ...
-
DBに新しいTBLを作成した際の初...
-
グループの数を取得したい
-
SQL*Loaderをダイレクトモード...
-
SQLiteから制約条件の取得
おすすめ情報