sql表中主键id之间的差距
|
我有一张桌子是: CREATE SEQUENCE id_seq;
CREATE TABLE public."UserInfo"
(
id bigint NOT NULL DEFAULT nextval('id_seq'),phone text,password text,name text,surname text,middle_name text,email text,company text,title text,image_id text,CONSTRAINT "UserInfo_pkey" PRIMARY KEY (id),CONSTRAINT "UserInfo_image_id_key" UNIQUE (image_id),CONSTRAINT "UserInfo_phone_key" UNIQUE (phone)
)
WITH (
OIDS=FALSE
);
ALTER SEQUENCE id_seq OWNED BY public."UserInfo".id;
ALTER TABLE public."UserInfo"
OWNER TO postgres;
当我对唯一列的相同值的插入做出错误请求时. “id”正在增加……这是错误的id请求; ERROR: null value in column "id" violates not-null constraint DETAIL: Failing row contains (null,9921455867,mg123209,name,surname,namesurname@xxx.com,Company Name,Title Of Person,123asd). ********** Error ********** 这是我的表结果; 1;"1234477867";"qweff";"Name";"Surname";"''";"namesurname@qwe.com";"Company";"Title";"qwer1234" 4;"5466477868";"1235dsf";"Name";"Surname";"''";"banesyrna@pwqe.com";"Company";"Title";"qwer1235" 6;"5051377828";"asd123";"Name";"Surname";"''";"qweg@sdcv.com";"Company";"Title";"qwesr1235" 请帮助我如何解决这个问题,我想要顺序1,2,3 ..顺序.. 解决方法这是 sequences的工作方式.
正如评论中指出的那样,序列中存在差距是没有害处的.如果您删除表中的某些行,原因是您在主键值中创建了间隙,并且通常不会重置它们以使它们顺序. 如果您坚持创建无间隙序列,请阅读本文:http://www.varlena.com/GeneralBits/130.php并为慢速插入做好准备. (编辑:百科站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 通过分析SQL语句的执行计划优化SQL
- sql-server – SQL Server包装选择…将查询插入隐式事务吗?
- 详解html-webpack-plugin使用
- sql-server – 将SQL Server数据库从旧生产服务器移动到新服
- sql-server-2008-r2 – 使用WHERE IN在删除操作期间发生意外
- sql-server – coldfusion,iis7,sql server管理员有哪些日常
- sql-server – 在SQL Server 2005中使用数据生成脚本
- SQL语句中的全局变量
- 如何在单个数据库中将Hibernate用于两个不同的模式
- sql-server – 将参数传递给TADOStoredProc(Delphi)的更好方

