postgres 序列
postgres序列(serial)和类型:https://www.cnblogs.com/alianbog/p/5654604.html
序列:https://www.cnblogs.com/mchina/archive/2013/04/10/3012493.html
serial序列其实就是当不给此字段赋值的时候,自动获取下一个值(唯一),可以当作自增主键
一、 创建表的时候创建序列
1. 方式一
create table tbl_serial(a serial,b varchar());
2. 方式二
DROP SEQUENCE if EXISTS "public"."quake_data_id_seq";
CREATE SEQUENCE "public"."quake_data_id_seq"
INCREMENT
MINVALUE
MAXVALUE
START
CACHE ; DROP TABLE if EXISTS "public"."quake_data";
CREATE TABLE "public"."quake_data" (
"id" int4 NOT NULL DEFAULT nextval('quake_data_id_seq'::regclass),
"quake_id" int4 DEFAULT ,
"channel_id" varchar() COLLATE "pg_catalog"."default" DEFAULT NULL,
"gauge_data" float8 DEFAULT NULL,
"guage_time" timestamp() DEFAULT NULL,
CONSTRAINT "" PRIMARY KEY ("id")
)
; ALTER TABLE "public"."quake_data"
OWNER TO "username"; COMMENT ON COLUMN "public"."quake_data"."quake_id" IS '事件id';
COMMENT ON COLUMN "public"."quake_data"."channel_id" IS '点号';
COMMENT ON COLUMN "public"."quake_data"."gauge_data" IS '测量值';
COMMENT ON COLUMN "public"."quake_data"."guage_time" IS '测量时间';
二、表已经创建好,后来单独创建序列,给表字段绑定序列
创建序列示例:
CREATE SEQUENCE "public"."quake_data_id_seq"
INCREMENT
MINVALUE
MAXVALUE
START
CACHE ;
修改字段默认值:
1. 使用的navicat

2. 使用ALTER命令
ALTER TABLE "public"."ttt"
ALTER COLUMN "id" TYPE int4 USING "quake_id"::int4; ALTER TABLE "public"."ttt"
ALTER COLUMN "id" SET DEFAULT nextval('ttt_id_seq'::regclass);
PS: 具体alter命令可以取官方网站查询:https://www.postgresql.org/docs/9.1/sql-altertable.html
小技巧:
还有一个方便的方法:使用navticat修改一个字段(属性,添加字段,删除字段等等都可以),然后点击SQL预览,就可以看到对应的sql命令了
比如下面图片演示,更改guage_time字段不能为空

然后点击SQL预览, 显示sql语句:
ALTER TABLE "public"."ttt"
ALTER COLUMN "guage_time" SET NOT NULL;

postgres 序列的更多相关文章
- mysql 序列与pg序列的比较
mysql序列(这里只谈innodb引擎): 在使用mysql的AUTO_INCREMENT时,使用AUTO_INCREMENT的字段必须建有索引,也可以为索引的一部分.当没有索引时会报错: ...
- 深入理解Postgres中的cache
众所周知,缓存是提高数据库性能的一个重要手段.本文着重讲一讲PostgreSQL中的缓存相关的东西.当然万变不离其宗,原理都是共同的,理解了这些,你也很容易把它运用到其它数据库中. What is a ...
- Postgres数据库补丁脚本示例
SET client_encoding = 'UTF8';-- 新建序列和表DROP TABLE IF EXISTS cms_user_unit;DROP SEQUENCE IF EXISTS cms ...
- 浅析Postgres中的并发控制(Concurrency Control)与事务特性(上)
转载:https://www.cnblogs.com/flying-tiger/p/9567213.html#4121483#undefined PostgreSQL为开发者提供了一组丰富的工具来管理 ...
- 浅析Postgres中的并发控制(Concurrency Control)与事务特性(下)
上文我们讨论了PostgreSQL的MVCC相关的基础知识以及实现机制.关于PostgreSQL中的MVCC,我们只讲了元组可见性的问题,还剩下两个问题没讲.一个是"Lost Update& ...
- 浅析Postgres中的并发控制(Concurrency Control)与事务特性(上)(转)
这篇博客将MVCC讲的很透彻,以前自己懂了,很难给别人讲出来,但是这篇文章给的例子就让人很容易的复述出来,因此想记录一下,转载给更多的人 转自:https://www.cnblogs.com/flyi ...
- postgres常用命令
1.登录 psql -U pname -d database // pname 表示postgres的登录用户名,database 则表示要访问的数据库 2.查看所有的数据库 \l 3.查看所有的表 ...
- postgres 基本使用
postgres=# help 您正在使用psql, 这是一种用于访问PostgreSQL的命令行界面 键入: \copyright 显示发行条款 \h 显示 SQL 命令的说明 \? 显示 pgsq ...
- postgres表空间、模式、表和用户/角色之间的关系
一. 角色(role)和用户(user) 1. role postgres=# create role kanon password 'kanon'; #使用role创建 ...
随机推荐
- Apache2 服务配置 ubuntu16.04 + django1.11
(步骤) 环境 Ubuntu 16.04 Python 3.5.2 Django 1.11 Apache 2.4 1.Apache2安装 sudo apt-get install apache2 查看 ...
- 坑:jmeter部署AWS云服务器时出现连接超时Non HTTP response code: org.apache.http.conn.HttpHostConnectException
背景: jmeter脚本部署到云服务器(AWS EC2)公网上时,启动jmeter脚本运行了5个小时才运行完毕,后面发现脚本报错timeout(如图),找了很久不知道原因,后面进入脚本发现全部在报错. ...
- JavaScript中的内存溢出与内存泄漏
内存溢出 是一种程序运行出现的错误: 当程序运行需要的内存超过了剩余的内存时, 就出抛出内存溢出的错误 var obj = {} for (var i = 0; i < 100000; i++) ...
- 牛顿插值法(c++)
X Y 0.40 0.41075 0.55 0.57815 0.65 0.69675 0.80 0.88811 0.90 1.02652 1.05 1.25382 #include using nam ...
- Sql注入基本思路
Sql注入基本思路 利用mysql自己动手 登录 使用show databases;查看数据库,sql注入主要用到的是information_schema这个库(mysql中大小写不敏感) infor ...
- Python3爬取王者官方网站英雄数据
爬取王者官方网站英雄数据 众所周知,王者荣耀已经成为众多人们喜爱的一款休闲娱乐手游,今天就利用python3 爬虫技术爬取官方网站上的几十个英雄的资料,包括官方给出的人物定位,英雄名称,技能名称,CD ...
- Oracle定时任务执行存储过程备份日志记录表
写在前面 需求 1.备份系统日志表T_S_LOG, 按照操作时间字段OPERATETIME, 将每天的日志增量备份到另一张表. 思路 1.创建一张数据结构完全相同的表T_S_LOG_BAK作为备份表 ...
- Python实例100个(基于最新Python3.7版本)
Python3 100例 原题地址: http://www.runoob.com/python/python-100-examples.html git地址: https://gith ...
- 关于Linux中nohup.out日志过大问题
背景,java项目,一般在运行JAVA程序时需要用到nohup命令来实现后台启动日志,默认保存在当前目露nohup.out文件.但是有些程序输出nohup文件会出现过大的情况. 在此解决如下: 1,在 ...
- c#修改webservice 的地址和端口(修改配置文件)
修改服务引用的地址和端口有两种方法: 1.直接修改配置文件web.config 2.动态修改: 右击转到实现 发现五个构造方法,通过第三个构造方法即可进行URL的初始化 IIS修改IP地址后 直接在初 ...