如果在建表时没有加primary key约束、not null约束、unique约束、default值,而是创建完表之后在某个字段添加的话

1.primary key约束的添加与删除

给red_packet_refund表id字段添加primary key约束:

alter table red_packet_refund add constraint pk_rpr_id primary key(id);

删除primary key约束:

alter table red_packet_refund drop constraint pk_rpr_id;

2.not null约束的添加与删除

给red_packet_customerinfo表bank_name字段添加not null约束:

alter table red_packet_customerinfo alter column bank_name set not null;

删除bank_name字段上的not null约束:

alter table red_packet_customerinfo alter column bank_name drop not null;

3.unique约束的添加与删除

给red_packet_pay表payment_acc字段添加unique约束:

create unique index uix_rpp_payment_acc on red_packet_pay(payment_acc);

删除payment_acc字段上的unique约束:

drop index if exists uix_rpp_payment_acc cascade;

4.default值的添加与删除

给red_packet_grab表created_date字段添加default值now():

alter table red_packet_grab alter column created_date set default now();

删除created_date字段的default值:

alter table red_packet_grab alter column created_date drop default;

5.列的新增与删除

给red_packet_pay表新增error_msg字段

alter table red_packet_pay add error_msg varchar(100);

删除red_packet_pay表error_msg字段

alter table red_packet_pay drop error_msg;

6.字段数据类型的更改

把red_packet_pay表的amount字段由numeric类型改为varchar类型

alter table red_packet_pay alter amount type varchar(10);

7.字段名字的更改

把red_packet_pay表的amount字段改为premium

alter table red_packet_pay rename amount to premium;

以上sql仅针对postgresql数据库有效。因为平安用的是postgresql数据库,故整理下备用。

postgresql数据库primary key约束/not null约束/unique约束及default值的添加与删除、列的新增/删除/重命名/数据类型的更改的更多相关文章

  1. Oracle数据库-primary key/foreign key和references关系

    主要介绍一下个人对主键(primary key).外键(foreign key).候选键(Candidate key).超键(super key).references的总结 概念: 主键:用户选择元 ...

  2. SQL Server Primary key 、clustered index 、 unique

    primary key: 1.主键不可以有空值. 2.不可以有重复行. unique : 1.可以有空行. 2.不可以有重复行. clustered index: 1.可以有重复行. 2.可以有空行. ...

  3. SQL CREATE TABLE 语句\SQL 约束 (Constraints)\SQL NOT NULL 约束\SQL UNIQUE 约束

    CREATE TABLE 语句 CREATE TABLE 语句用于创建数据库中的表. SQL CREATE TABLE 语法 CREATE TABLE 表名称 ( 列名称1 数据类型, 列名称2 数据 ...

  4. sql unique约束详解

    UNIQUE 约束唯一标识数据库表中的每条记录. UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证. PRIMARY KEY 拥有自动定义的 UNIQUE 约束. 请注意 ...

  5. SQL UNIQUE 约束

    SQL UNIQUE 约束 UNIQUE 约束唯一标识数据库表中的每条记录. UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证. PRIMARY KEY 拥有自动定义的 ...

  6. 【Mysql】key 、primary key 、unique key 与index区别

    参考:https://blog.csdn.net/nanamasuda/article/details/52543177 总的来说,primary key .unique key 这些key建立的同时 ...

  7. SQL-W3School-高级:SQL UNIQUE 约束

    ylbtech-SQL-W3School-高级:SQL UNIQUE 约束 1.返回顶部 1. SQL UNIQUE 约束 UNIQUE 约束唯一标识数据库表中的每条记录. UNIQUE 和 PRIM ...

  8. mysql UNIQUE约束 语法

    mysql UNIQUE约束 语法 作用:UNIQUE 约束唯一标识数据库表中的每条记录. 江苏大理石平台 说明:UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证.PRI ...

  9. mysql中 key 、primary key 、unique key 和 index 有什么不同

    mysql中 key .primary key .unique key 和 index 有什么不同 key 是数据库的物理结构,它包含两层意义和作用, 一是约束(偏重于约束和规范数据库的结构完整性), ...

随机推荐

  1. datagrid 自定义 pager

    $(document).ready(function(){ var p = $('.easyui-datagrid').datagrid('getPager'); $(p).pagination({ ...

  2. 编写高质量代码改善C#程序的157个建议——建议37:使用Lambda表达式代替方法和匿名方法

    建议37:使用Lambda表达式代替方法和匿名方法 在建议36中,我们创建了这样一个实例程序: static void Main(string[] args) { Func<int, int, ...

  3. 关于在审查元素中看到的::before与::after

    审查元素中看到的这两个标签,表示内容并不在元素中,而是在css中,可以查看style看到具体内容. 一般来说这样做是为了清除浮动(clearfix)的代码,防止后边的容器因为浮动出现布局的混乱. 添加 ...

  4. IOS GPS跟踪备注

    CLLocationManager还提供了如下类方法来判断当前设备的定位相关服务状态. Ø + locationServicesEnabled:返回当前定位服务是否可用. Ø + deferredLo ...

  5. 21天学通C++学习笔记(一):入门

    1. 基础概念 1.1 编程语言 旨在让人更容易得使用计算资源,充分利用电脑,不用人做一些重复劳动或持续参与. 1.2 可执行文件 是可运行的成品,应按程序员希望的那样做. 1.3 生成可执行文件的步 ...

  6. 十五、Node.js-fs模块(中)

    有了上一篇JS同步异步知识的铺垫,我们一起学习一下fs模块的同步和异步知识: Node.js内置的fs模块就是文件系统模块,负责读写文件. 和所有其它JavaScript模块不同的是,fs模块同时提供 ...

  7. constexpr函数------c++ primer

    constexpr函数是指能用于常量表达式的函数.定义constexpr函数的方法有其他函数类似,不过要遵循几项约定:函数的返回值类型及所以形参的类型都是字面值类型,而且函数体中必须有且只有一条ret ...

  8. oracle 新增主键

    alter table tablename add constraint pk_tablename primary key (column1,column2,...); 可以新增单主键或联合主键: 新 ...

  9. ios app提交之前需要哪几个证书

    1.遇到的问题 一款App在别人的机器上开发和发布,现在迭代更新和开发需要在一台新mac机上开发和发布. (使用同一个开发者账号)问题: 1.在新mac机器上开发并导入真机测试,是不是需要从别人的机器 ...

  10. { "result": null, "log_id": 304592860300941982, "error_msg": "image check fail", "cached": 0, "error_code": 222203, "timestamp": 1556030094 }

    这个是人脸识别时无法检测到图片报的错,有时候我们检测一张图片是否在库里面,当一张图片明显在里面,还检测不到,如下面是我的代码 package Test1; import java.io.IOExcep ...