`
wandejun1012
  • 浏览: 2736761 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

postgresql如何让主键自增

 
阅读更多

 

法一:

CREATE TABLE customers
(
  customerid SERIAL primary key ,
  companyname character varying,
  contactname character varying,
  phone character varying,
  country character varying
)

 法二:

CREATE SEQUENCE event_id_seq
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;

alter table event alter column id set default nextval('event_id_seq');

 

 

2种方法都可以,第一种简单点。

refurl:http://bbs.csdn.net/topics/340003365

http://blog.csdn.net/zezeshenshi/article/details/8542274

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    支持主键自增的数据库获取主键值.zip

    对于支持主键自增的数据库,如MySQL、SQLite、PostgreSQL等,系统会自动为每个新插入的记录生成一个唯一的主键值,无需手动设置。 在Java开发中,MyBatis作为一个轻量级的持久层框架,广泛应用于数据操作。MyBatis...

    SQLite3中自增主键相关知识总结

    在其他数据库系统中,如MySQL或PostgreSQL,可以使用TRUNCATE TABLE命令快速清空表并重置自增主键。然而,SQLite3不支持TRUNCATE TABLE,而是建议使用DELETE FROM TableName语句来达到相同的效果。在SQLite中,删除...

    mybatis获取自增主键的值

    自增主键通常在关系型数据库如MySQL、PostgreSQL中使用。它们会在每次插入新记录时自动递增,确保生成唯一的ID。在MySQL中,这可以通过设置`AUTO_INCREMENT`属性来实现。 2. **MyBatis的自动映射机制**: MyBatis...

    04_传智播客JPA详解_第一个JPA实例与JPA主键生成策略

    首先,让我们详细了解一下JPA。JPA允许开发者将Java类映射到数据库表,而Java对象则对应表中的行。这样就避免了传统的SQL语句编写,提高了开发效率。JPA的核心概念包括实体(Entity)、实体管理器(EntityManager)...

    postgresql导入数据库表并重设自增属性

    注:一般序列名称由数据表名+主键字段+seq组成 (通常情况下主键字段即为自增字段),如下表名为cof_table_hot_analysis,主键字段为 id CREATE SEQUENCE cof_table_hot_analysis_id_seq START WITH 1 INCREMENT...

    DB2到GreenPlum/PostgreSQL的转换指南

    - **主键**:DB2中的主键定义与GreenPlum/PostgreSQL相似,但需要注意的是,在GreenPlum/PostgreSQL中,主键约束通常会自动创建一个唯一索引。 - **外键**:DB2支持外键约束,但在GreenPlum/PostgreSQL中,外键约束...

    1.5-PostgreSQL对象-关系数据库系统软件.ppt

    4. **序列(Sequence)对象**:生成唯一的整数序列,常用于主键自增字段。 5. **函数(Function)对象**:用户可以定义的可重复使用的代码块,可以接受参数并返回值,增强了SQL的表达能力。 6. **触发器(Trigger)...

    Hibernate主键策略-sequence

    Hibernate还提供了其他主键生成策略,如`increment`(适用于单线程环境),`identity`(数据库自增,如MySQL),`table`(通过独立的主键生成表)等,开发者应根据具体需求选择合适的策略。 6. **跨数据库兼容性**...

    最新的若依框架postgresql版本

    3. SQL语法差异:MySQL和PostgreSQL的SQL语法有一些不同,如日期时间函数、自增主键等。在迁移过程中,可能需要对原有的SQL语句进行调整,以适应PostgreSQL的语法。 4. ORM框架兼容性:若依框架通常使用MyBatis或...

    hibernate的主键生成策略

    它不依赖于数据库的序列或自增功能,因此可以跨数据库使用。然而,由于它是基于Java的同步机制,当多个JVM并发访问时可能会出现主键冲突。所以,它适用于单进程环境,不适合集群环境。 3. **hilo**(高低位方式):...

    PostgreSQL数据库培训学习手册 .pdf

    - 自增字段(SERIAL类型):PostgreSQL提供了一种特殊的数据类型SERIAL,用于自增字段的创建,类似于Oracle中的自增关键字。 2. 约束条件: - 检查约束(CHECK):用于确保列中的值满足特定的条件,比如价格大于...

    PostgreSQL Developer s Guide

    - **注意**: 这会释放所有数据并重置自增ID,但保留表结构。 ##### 3. Inserting, Updating, and Deleting Data from Tables - **插入数据(Inserting Data)** - **基本语法**: `INSERT INTO table_name (column1,...

    Hibernate各种主键生成策略与配置详解

    increment策略由Hibernate在内存中自增生成主键,不依赖于数据库。它通过查询当前表的最大ID值,然后在内存中递增生成新的主键。由于这个过程不是线程安全的,因此在多JVM环境下可能会导致主键冲突。仅适用于单个...

    深入分析mysql为什么不推荐使用uuid或者雪花id作为主键

    前言:在mysql中设计表的时候,mysql官方推荐不要使用uuid或者不连续不重复的雪花id(long形且唯一),而是推荐连续自增的主键id,官方的推荐是auto_increment,那么为什么不建议采用uuid,使用uuid究竟有什么坏处?...

    PostgreSQL 实用实例参考

    在PostgreSQL中,可以使用`CREATE TABLE`语句定义表结构,包括数据类型(如INT、VARCHAR、DATE等)、主键约束、外键约束等。例如: ```sql CREATE TABLE employees ( id SERIAL PRIMARY KEY, name VARCHAR(50), ...

    Laravel开发-laravel-postgresql-inherit

    在Eloquent ORM中,你可以通过定义`$table`和`$incrementing`属性来指定模型对应的表名和主键是否自增。 例如,如果你有一个`Employee`父表和一个`Manager`子表,`Employee`模型可能会这样定义: ```php namespace...

    Postgresql基础语法汇总.zip_PostgreSQL基础语法汇总

    这里,`id`是自增主键,`name`是非空字符串,`email`是唯一且可为空的字符串,`created_at`是默认为当前时间的日期时间戳。 2. **修改表格**: `ALTER TABLE`用于修改已存在的表格结构。比如添加新列: ```sql ...

    Hibernate用UUID作为主键的Demo

    在使用UUID作为主键时,数据库表对应的主键字段应设置为足够的长度,如MySQL的`CHAR(36)`或PostgreSQL的`VARCHAR(36)`,以容纳32位十六进制字符串加上4个破折号。 ### 6. 测试与运行 在实际项目中,你可以创建一个...

    Hibernate的主键生成方式

    - **应用场景**:适合于高并发环境下,且数据库不支持自增主键的场景。 3. **seqhilo** - **定义**:与hilo类似,但是使用数据库序列(sequence)来实现高位值的管理。主要用于Oracle等支持序列的数据库。 - **...

    PostgreSQL常用数据类型

    它们非常适合用作表中的主键字段。 #### 4. 货币数据类型 - **money**:这是一种特殊的数据类型,用于存储货币值。它的取值范围为-21474836.48到+21474836.47,非常适合金融应用中的货币计算。 #### 5. 字符串数据...

Global site tag (gtag.js) - Google Analytics