資料庫系列--postgreSQL序列與id自增長
一、問題背景
將entity實體物件使用JPA持久化persist到資料庫時,需要設定id的自增長方式。程式碼片段如下:
(postgreSQL9.9.5)
@Id
@SequenceGenerator(name = "engine_info_seq", sequenceName = "engine_info_id_seq", allocationSize = 1)
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "engine_info_seq")
private Integer id;
然而並無法實現id的自增長。
原因很簡單,無法找到名為engine_info_id_seq的SEQUENCE(序列)。
二、序列與id自增長的關係
個人理解:
所謂的自增長,實際上是將手動新增id的任務交給了序列SEQUENCE,定義好SEQUENCE的總長度,啟始值,每次增長的幅度等等。
下面是SEQUENCE的生成程式碼:
CREATE SEQUENCE public.engine_info_id_seq
INCREMENT 1
MINVALUE 1
MAXVALUE 9223372036854775807
START 126
CACHE 1;
ALTER TABLE public.engine_info_id_seq
OWNER TO postgres;
三、實現id自增長的完整步驟
在建立id欄位時,需要將id的型別設定為”serial”,會自動生成相應的序列。
如下:
序列程式碼:
CREATE SEQUENCE public.engine_info_id_seq
INCREMENT 1
MINVALUE 1
MAXVALUE 9223372036854775807
START 126
CACHE 1;
ALTER TABLE public.engine_info_id_seq
OWNER TO postgres;
相關推薦
資料庫系列--postgreSQL序列與id自增長
一、問題背景 將entity實體物件使用JPA持久化persist到資料庫時,需要設定id的自增長方式。程式碼片段如下: (postgreSQL9.9.5) @Id @Sequ
初學mysql(十)-資料庫之儲存過程、函式與遊標-自定義函式和流程控制(下)
上一篇部落格講了儲存過程、函式、以及遊標,這一篇部落格接著上一篇部落格來說。首先說說mysql資料庫中的流程控制及自定義函式的使用。 自定義函式: 根據所需要的功能,使用流程控制來完成所需要的功能,完成功能的程式碼就稱為自定義函式。要想完成自定義函式就必須學會流程控制的使
oracle id 自增長
CREATE TABLE testTable1 ( ID INT NOT NULL, NAME VARCHAR2(4000) NOT NULL, PRIMARY KEY(ID) ) TABLESPACE MYDB; --建立自增ID,名稱為:表名_欄位名_SEQ CREA
Spring-boot mongodb ID自增長註解實現 適用於JDK 1.7和JDK 1.8
開發工具Idea ,JDK1.8 Entity類 SeqInfo.java package com.gl.springbootdao.mongodb.entity; import lombok.Getter; import lombok.Setter; import lombok.T
Spring-boot mongodb ID自增長註解實現 適用於JDK 1.7和JDK 1.8
開發工具Idea ,JDK1.8 Entity類 SeqInfo.java package com.gl.springbootdao.mongodb.entity; import lombok.Getter; import lombok.Setter; import l
MongoDB學習筆記一ID自增長
概要 MongoDB 的_id欄位作為一個主鍵存在於所有文件的最頂層,_id必須是唯一的,而且總是具有唯一約束的索引。除了唯一約束,你可以在集合中的_id欄位上使用任何值, 以下這個指南描述了在_id上建立一個自增序列的兩種方式: Use Cou
MongoDB學習筆記一 ID自增長
以下是官網原文地址: http://docs.mongodb.org/manual/tutorial/create-an-auto-incrementing-field/ 概要 MongoDB 的_id欄位作為一個主鍵存在於所有文件的最頂層,
SQL Server 重置ID自增長
一、背景 SQL Server資料庫中表A中Id欄位的定義是:[Id] [int] IDENTITY(1,1),隨著資料的不斷增長,Id值已經接近2147483647(int的取值範圍為:-2 147 483 648 到 2 147 483 647)了,雖然已經對舊
Kafka原始碼深度解析-系列1 -訊息佇列的策略與語義
-Kafka關鍵概念介紹 -訊息佇列的各種策略與語義 作為一個訊息佇列,Kafka在業界已經相當有名。相對傳統的RabbitMq/ActiveMq,Kafka天生就是分散式的,支援資料的分片、複製以及叢集的方便擴充套件。 與此同時,Kafka是高可靠的、持
《TCP/IP具體解釋》讀書筆記(21章)-TCP的超時與重傳
打開 定時器 是否 檢查 例如 技術 blog 信息 全部 TCP提供可靠的運輸層。它使用的方法之中的一個就是確認從還有一端收到的數據。但數據和確認都有可能會丟失。TCP通過在發送時設置一個定時器來解決這樣的問題。假設當定時器溢出時還沒有收到確認,它就重傳該數據。對於實現
蘋果新的編程語言 Swift 語言進階(十三)--類型檢查與類型嵌套
兩個類 nes left p s 查詢 text edi host letter 一 類型檢查 1、 類型檢查操作符 類型檢查用來檢查或轉換一個實例的類型到另外的類型的一種方式。 在Swift中,類型檢查使用is和as操作符來實現。
MySQL存儲引擎--MyISAM與InnoDB區別
多應用 基本 binlog sele detail bin insert details text MyISAM 和InnoDB 講解 InnoDB和MyISAM是許多人在使用MySQL時最常用的兩個表類型,這兩個表類型各有優劣,視具體應用而定。基本的差別為:MyISA
面向過程與面向對象的本質區別-對面向過程與面向對象的一點感悟
層次 包括 感悟 兩種 上進 detail 計算 行為 向上 面向過程與面向對象的本質區別 一位計算機界的大師曾說過,“我認為,面向對象的目標從來都不是復用和擴展,而是提供一種處理復雜問題的方法”。 面向過程講究自頂向下逐步求精。找到一個系統的入口然後順藤摸瓜,分析出每一步
postgresql+postgis+pgrouting實現最短路徑查詢(1)---線數據的處理和建立拓撲
分享圖片 date table 函數 top pda sql pos ima 1、ALTER TABLE beijing_line ADD COLUMN source integer; ALTER TABLE beijing_line ADD COLUMN target
NancyFx-打造小型 WebAPI 與 Microservice 的輕巧利器
需求 ict content ogr tostring coo 是我 完整 cal 在做非網站系統整合時,我很愛用一招:寫個 Process 提供 WebAPI 介面給其他系統呼叫,不管你用什麼烏語言鬼平臺,怎麼可能找不到 HttpCllient 元件或程式庫?都民國幾年了
從零系列--npm包(一)
node key .com eve http adduser gitlab 倉庫 選擇 一、目的 主要是紀錄和回顧自己開發的一些步驟以及遇到的一些問題和解決方案 二、準備工作 1、IDE 選擇 VS Code 2、安裝node 環境 (https://nodejs.org/
從零系列--node爬蟲利用進程池寫數據
存儲 exit titles date [] += port 請求 如果 1、主進程 const http = require(‘http‘); const fs = require(‘fs‘); const cheerio = require(‘cheerio‘); c
正則表示式-- (?:pattern)與(?=pattern)的區別
正則表示式-- (?:pattern)與(?=pattern)的區別 2018年04月20日 13:48:44 shashagcsdn 閱讀數:115 標籤: 正則表示式 非獲取匹配 更多 個人分類: 學習筆記 版權宣告:本文為博主原創文章,未經博主允許不得轉載。 https://b
python--類-例項-繼承中變數的id是否變化
''' 注: 估計這麼亂的程式碼只有我自己能看。通過這段程式碼的驗證,證明了在類和例項的相對關係中, 把變數儲存為字串,數字,在各個類、例項之間變換的時候,變數的id是變化的, 把變數儲存為列表和字典的時候,id地址是不變的。id地址變與不變用於確認是否是同一份資料, 看一下這個變數是否是全域性
android影象處理系列之五--給圖片新增邊框(中)
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!