回答

收藏

SQL在单个命令中在表中添加列和注释

技术问答 技术问答 221 人阅读 | 0 人回复 | 2023-09-14

我正在为我的Web应用程序使用Oracle 11g。我想向现有表添加列和注释。我可以使用以下命令轻松地做到这一点# {  m- o9 n3 C4 @- O4 g" a
ALTER TABLE product ADD product_description VARCHAR2(20)
7 w& C+ ]2 n% n& B" z/ }4 Y% u& x+ z) H+ G; V" B
COMMENT ON COLUMN product.product_description
0 L- C- ^7 v5 [6 o, Q  m* u     IS 'This is comment for the column';) B5 ~6 }& j0 b
但是我想在单个命令中完成上述任务。我在互联网上搜索了一个命令,以在单个命令中添加列和注释,但找不到。我想知道这是否可能。任何建议将不胜感激。' v/ d- X1 k4 d
               
! v, {5 [3 j  X; w# d' T9 \- v解决方案:% _0 ~! k$ d3 }
                ; ]" p+ v; r& B' l( Y

& K: ]8 B: N2 g! U6 P; Y$ S/ k
1 C- k8 n5 S5 T' [                不,你不能。8 v# U' i' G0 r' F8 M0 z/ ]' w
没有任何理由需要这样做。这是一次操作,因此只需要额外的一两秒钟即可实际键入和执行。9 m4 M; a" c1 J
如果您要在Web应用程序中添加列,则这更表明您的数据模型存在缺陷,因为您无需这样做。" ]6 I; j# G) x. J, C% p

( n8 X/ I" O  P4 a7 o回应您的评论,评论是一个列属性;它可能 看起来 如此但幕后的Oracle存储此作为的属性 对象 。; V# ~* ?4 f" c$ i, [' K6 T
SQL> desc sys.com$3 v% k! B$ e; U
Name                                      Null?    Type0 B) k4 x& h' n5 Q! V0 ]
----------------------------------------- -------- ----------------------------
3 T. k0 @# W" \' E OBJ#                                      NOT NULL NUMBER
( h* X: [; w3 ]5 h COL#                                               NUMBER
( I* U  }6 z4 n5 T# @1 G: Q6 D( V COMMENT$                                           VARCHAR2(4000), p  k* c7 O& e4 M/ C
SQL>
, y9 E7 R* o" t" u& h- \$ j6 v该列是可选的,sys.col$不包含注释信息。6 [# Q* {1 q! W. x. [6 z9 s" @% Q
我不知道,我假设这样做是为了只有一个处理评论的系统,而不是多个。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则