修改is_nullable属性
#设置字段为非null属性:(表subscriptions中字段 newsletter 为非null)
ALTER TABLE subscriptions ALTER COLUMN newsletter SET NOT NULL;
#删除字段原先的非null设置:(删除表subscriptions中字段 newsletter 可以为null)
ALTER TABLE subscriptions ALTER COLUMN newsletter DROP NOT NULL;
修改DEFAULT属性
#设置字段的默认值;(表subscriptions 中字段newsletter 默认值为true)
ALTER TABLE subscriptions ALTER COLUMN newsletter SET DEFAULT true;
#删除字段的默认值设置:(删除表subscriptions 中字段newsletter 的默认值设置)
ALTER TABLE subscriptions ALTER COLUMN newsletter DROP DEFAULT;
修改字段类型
# 修改字段类型;将表subscriptions中的字段newsletter类型改为浮点数(10位,保留2位);关于类型转换存在
# 限制,无法随意转换
ALTER TABLE subscriptions ALTER newsletter TYPE DECIMAL(10,2);
cockroach 官方文档位置:【跳转】
重命名字段名称
# 重命名字段名称;将表corpstore_stuff_files 中的字段sum_t 改为sum;
ALTER TABLE corpstore_stuff_files rename column sum_t to sum;
删除字段
# 删除字段;将表orders 中的字段billing_zip删除;
ALTER TABLE orders DROP COLUMN billing_zip;
注意:在删除字段时可能报错
ERROR: rejected: ALTER TABLE DROP COLUMN will remove all data in that column (sql_safe_updates = true)
SQLSTATE: 01000;
可以先关闭sql_safe_updates;
sql>set sql_safe_updates=false;