如果在建表时没有加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. (转)15个非常棒的jQuery无限滚动插件【瀑布流效果】

    原文地址:http://www.cnblogs.com/lyw0301/archive/2013/06/19/3145084.html 现在,最热门的网站分页趋势之一是jQuery的无限滚动(也即瀑布 ...

  2. POJ2442 Sequence(堆的骚操作)

    Description Given m sequences, each contains n non-negative integer. Now we may select one number fr ...

  3. C# DataGridView控件动态添加新行

    C# DataGridView控件动态添加新行 DataGridView控件在实际应用中非常实用,特别需要表格显示数据时.可以静态绑定数据源,这样就自动为DataGridView控件添加相应的行.假如 ...

  4. SQL server T-SQL索引详解

    SQL索引在数据库优化中占有一个非常大的比例,一个好的索引的设计,可以让sql语句查询效率提高很多被. 1.1 什么是索引? SQL索引有两种,聚集索引和非聚集索引,索引的主要目的是提高T-SQL系统 ...

  5. C#多线程编程实战1.2暂停线程(休眠)

    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threa ...

  6. hive的安装与配置 mysql安装 启动

    三种模式 内嵌模式:元数据保持在内嵌的derby模式,只允许一个会话连接 本地独立模式:在本地安装Mysql,吧元数据放到mySql内 远程模式:元数据放置在远程的Mysql数据库 1.下载Hive安 ...

  7. React进阶篇(2) -- Redux

    前言 如果还不知道为什么要使用Redux,说明你暂时还不需要它. 三大原则 单一数据源 整个应用的 state 被储存在一棵 object tree 中,并且这个 object tree 只存在于唯一 ...

  8. ASP Session 对象

    http://www.w3school.com.cn/asp/asp_sessions.asp

  9. Python——可变和不可变类型数据

    什么是不可变类型? 存储空间保存的数据不允许被修改,这种数据就是不可变类型. 常见的不可变类型有: 数字类型 int, bool, float, complex, long(2.x) 字符串 str ...

  10. request对象常用方法

    String getParameter(String name)根据表单组件名称获取提交数据 Sring[] getParameterValues(String name)获取表单组件对应多个值时的请 ...