lightdb22.3-新增支持oracle语法(modify column&drop primary key)

lightdb 22.3 - 新增支持oracle 语法(modify column&drop primary key)

在LightDB 22.3 版本中新增了oracle语法的支持:

  • 对alter table modify column语法的部分支持,下面会列出具体支持哪些, 哪些不支持。
  • 对 alter table drop primary key 的支持,可以不通过约束名直接删除主键

modify column

修改字段属性,目前支持如下用法:

1. 修改字段类型, oracle 没有USING expression, lightdb用于指定cast
MODIFY column_name data_type [ USING expression ]

2. 修改字段默认值
MODIFY column_name DEFAULT expression 

3. 修改字段 是否可为null
MODIFY column_name { NOT NULL | NULL } [ENABLE]

4. 修改字段 IDENTITY
MODIFY column_name GENERATED { ALWAYS | BY DEFAULT } AS IDENTITY [ ( sequence_options ) ]
MODIFY column_name DROP IDENTITY
    MODIFY column_name CONSTRAINT constraint_name { NOT NULL | NULL } [ENABLE]
    
5. 修改字段增加约束
-- unique
MODIFY column_name CONSTRAINT constraint_name UNIQUE [ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ]
-- PRIMARY KEY
MODIFY column_name CONSTRAINT constraint_name PRIMARY KEY [ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ]
-- REFERENCES
MODIFY column_name CONSTRAINT constraint_name REFERENCES reftable [ ( refcolumn ) ] 
    [ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ] [ ON DELETE referential_action ] [ ON UPDATE referential_action ] [ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ]
-- CHECK 目前不检验实际字段是否一致
MODIFY column_name CONSTRAINT constraint_name CHECK '(' a_expr ')' [ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ]

不支持用法

  • modify_col_properties:

    • encrypt/decrypt

    • LOB_storage_clause

    • alter_XMLSchema_clause

    • default on null

  • modify_virtcol_properties

  • modify_col_visibility

  • modify_col_substitutable

drop primary key

语法:

alter table table_name drop priamry key;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

紫无之紫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值