- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试添加一个带有自动增量的主键。
我已经阅读了一些文档和其他问题 - 有 SERIAL
和 nextval()
语句,但它们都不起作用。
这是我做的:
CREATE TABLE IF NOT EXISTS "category" (
"id" integer SERIAL PRIMARY KEY,
"name" varchar(30) DEFAULT NULL
); // the error near "SERIAL"
和
CREATE SEQUENCE your_seq;
CREATE TABLE IF NOT EXISTS "category" (
"id" integer PRIMARY KEY nextval('your_seq'),
"name" varchar(30) DEFAULT NULL
); // the error near 'nextval'
我做错了什么?有没有办法将主键递增 1。
最佳答案
serial
或多或少是一种列类型,所以说 integer serial
就像说 text text
,只是说 serial
:
CREATE TABLE IF NOT EXISTS "category" (
"id" SERIAL PRIMARY KEY,
"name" varchar(30) DEFAULT NULL
);
如果您想自己创建序列,那么您希望将 id
的默认值设为序列中的下一个值,这意味着说 default nextval('your_seq')
:
CREATE SEQUENCE your_seq;
CREATE TABLE IF NOT EXISTS "category" (
"id" integer PRIMARY KEY default nextval('your_seq'),
"name" varchar(30) DEFAULT NULL
);
要模拟通常的串行
行为,您还需要使表拥有序列:
alter sequence your_seq owned by category.id;
阅读Serial Types手册的一部分可能会富有成效。
我还建议您除非万不得已,否则不要将表名和列名用双引号引起来。 PostgreSQL 会将您的标识符折叠为小写,因此 id
和 "id"
将是同一件事,但不必要的引用是一个坏习惯,很容易导致引号困惑无处不在。
关于sql - PostgreSQL 9.1 主键自增,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20781111/
1、修改数据 复制代码代码如下: DataRow dr =
数据库操纵基本流程为: 1、连接数据库服务器 2、选择数据库 3、执行SQL语句 4、处理结果集 5、打印操作信息 其中用到的相关函数有 •resource m
CRUD是Create(创建)、Read(读取)、Update(更新)和Delete(删除)的缩写,它是普通应用程序的缩影。如果您掌握了某框架的CRUD编写,那么意味可以使用该框架创建普通应用程序了
项目结构: 添加页面: &
本文实例讲述了android操作sqlite数据库(增、删、改、查、分页等)及listview显示数据的方法。分享给大家供大家参考,具体如下: 由于刚接触android开发,故此想把学到的基础知识
我是一名优秀的程序员,十分优秀!