53

Web アプリケーションに Oracle 11g を使用しています。既存のテーブルに列とコメントを追加したい。以下のコマンドで簡単に実行できます

ALTER TABLE product ADD product_description VARCHAR2(20)

COMMENT ON COLUMN product.product_description 
     IS 'This is comment for the column';

しかし、上記のタスクを単一のコマンドで実行したいです。単一のコマンドで列とコメントを追加するコマンドをインターネットで検索しましたが、見つかりませんでした。これが可能なのだろうか。どんな提案でも大歓迎です。

4

4 に答える 4

37

いいえ、できません。

あなたがする必要がある理由はありません。これは1回限りの操作であるため、実際に入力して実行するのに1〜2秒しかかかりません。

Webアプリケーションに列を追加する場合、これを行う必要はないので、これはデータモデルの欠陥を示しています。


コメントが列属性であるというコメントへの応答。そう思われるかもしれませんが、舞台裏では、Oracleはこれをオブジェクトの属性として格納します。

SQL> desc sys.com$
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 OBJ#                                      NOT NULL NUMBER
 COL#                                               NUMBER
 COMMENT$                                           VARCHAR2(4000)

SQL>

この列はオプションでありsys.col$、コメント情報は含まれていません。

これは、コメントを処理するシステムを複数ではなく1つにするために行われたものだと思いますが、私にはわかりません。

于 2012-07-03T10:01:06.337 に答える
21

以下のクエリを使用して、既に作成されたテーブルのコメントを更新または作成できます。

構文:

COMMENT ON COLUMN TableName.ColumnName IS 'comment text';

例:

COMMENT ON COLUMN TAB_SAMBANGI.MY_COLUMN IS 'This is a comment on my column...';
于 2013-10-29T19:21:12.847 に答える
-2

EMPLOYEE テーブルの 2 つの異なる列にコメントを追加します。

COMMENT ON EMPLOYEE
     (WORKDEPT IS 'see DEPARTMENT table for names',
     EDLEVEL IS 'highest grade level passed in school' )
于 2014-03-14T08:43:37.747 に答える