当前位置: 首页 > 面试题库 >

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

周睿范
2023-03-14
问题内容

我正在为我的Web应用程序使用Oracle 11g。我想向现有表添加列和注释。我可以使用以下命令轻松地做到这一点

ALTER TABLE product ADD product_description VARCHAR2(20)

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

但是我想在单个命令中完成上述任务。我在互联网上搜索了一个命令,以在单个命令中添加列和注释,但找不到。我想知道这是否可能。任何建议将不胜感激。


问题答案:

不,你不能。

没有任何理由需要这样做。这是一次操作,因此只需要额外的一两秒钟即可实际键入和执行。

如果您要在Web应用程序中添加列,则这更表明您的数据模型存在缺陷,因为您无需这样做。

回应您的评论,评论是一个列属性;它可能 看起来 如此但幕后的Oracle存储此作为的属性 对象

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

SQL>

该列是可选的,sys.col$不包含注释信息。

我不知道,我假设这样做是为了只有一个处理评论的系统,而不是多个。



 类似资料:
  • 问题内容: 我怎样才能通过mysql仅在一行中加入多行? 例子 : 学生表 现在我想要这种格式 我不确定该怎么做?我应该创建视图还是表格? 我想一个观点会很好。 问题答案: 我同意其他答案,即与PHP一起使用逗号分隔的值进行拆分可能是最好的方法,但是,如果由于任何其他原因需要通过Pure SQL建议的输出,则建议使用以下方法之一。 1.自我加入 2.使用ROW_NUMBER类型函数进行汇总

  • 我正在HIVE中编写代码来创建一个由1300行和6列组成的表: 现在,我想添加另一列,它包含所有1300行的唯一值,值将是。max_count是我现有表中的一列。我怎么能做到?我试图通过以下代码更改表

  • 我正在尝试添加一个外键的新列。我可以使用两个单独的命令添加列和外键约束: 有没有办法用一个ALTER TABLE命令而不是两个来做到这一点?我想不出任何可行的办法。

  • 问题内容: 我需要将删除标志列添加到数据库中的所有40个用户表。我可以编写一个脚本来遍历sys.tables,但是我想我会检查是否有人有更好的解决方案,或者针对这种情况预先创建了sql。 问题答案: 有一个未记录但众所周知的存储过程sp_msforeachtable: