lightdb alter table add column 语法支持括号

背景

在 Oracle 中,在旧表上用 alter table 命令一次添加多列是可以把列定义放在要括号里的,而 lightdb 之前版本 alter table 命令必须要多次执行 add .... 此次版本允许 lightdb 有同样功能。LightDB 版本为 LightDB1.0.V202303.00.000.

用例

  1. 以下行为都是允许的
CREATE TABLE foo(a int);
ALTER TABLE foo ADD COLUMN a1 int;
ALTER TABLE foo ADD COLUMN a2 int default 3;
ALTER TABLE foo ADD COLUMN b1 int, ADD COLUMN b2 int;
ALTER TABLE foo ADD (c1 int);
ALTER TABLE foo ADD (c2 int default 3);
ALTER TABLE foo ADD (e1 int), ADD e2 int, ADD COLUMN e3 int, ADD (e4 int, e5 int);
begin
  execute immediate 'alter table foo add(d int)';
end;
/
  1. 但是如果使用了括号,则不能再加 COLUMN 关键字( oracle 没有这个关键字)。
# ALTER TABLE foo ADD COLUMN (e1 int); --fails
ERROR:  syntax error at or near "("
LINE 1: ALTER TABLE foo ADD COLUMN (e1 int);
                                   ^

posted on   winter-loo  阅读(62)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示