- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章SQLite之Autoincrement关键字(自动递增)由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
SQLite 的 AUTOINCREMENT 是一个关键字,用于表中的字段值自动递增。我们可以在创建表时在特定的列名称上使用 AUTOINCREMENT 关键字实现该字段值的自动增加.
注意点:整型字段可以使用关键字AUTOINCREMENT.
语法 。
AUTOINCREMENT关键字的基本用法如下:
1
2
3
4
5
6
7
|
CREATE
TABLE
table_name(
column1
INTEGER
AUTOINCREMENT,
column2 datatype,
column3 datatype,
.....
columnN datatype,
);
|
例子:
考虑COMPANY表要创建如下:
1
2
3
4
5
6
7
|
sqlite>
CREATE
TABLE
COMPANY(
ID
INTEGER
PRIMARY
KEY
AUTOINCREMENT,
NAME
TEXT
NOT
NULL
,
AGE
INT
NOT
NULL
,
ADDRESS
CHAR
(50),
SALARY
REAL
);
|
现在,以下记录插入到表 COMPANY:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
INSERT
INTO
COMPANY (
NAME
,AGE,ADDRESS,SALARY)
VALUES
(
'Paul'
, 32,
'California'
, 20000.00 );
INSERT
INTO
COMPANY (
NAME
,AGE,ADDRESS,SALARY)
VALUES
(
'Allen'
, 25,
'Texas'
, 15000.00 );
INSERT
INTO
COMPANY (
NAME
,AGE,ADDRESS,SALARY)
VALUES
(
'Teddy'
, 23,
'Norway'
, 20000.00 );
INSERT
INTO
COMPANY (
NAME
,AGE,ADDRESS,SALARY)
VALUES
(
'Mark'
, 25,
'Rich-Mond '
, 65000.00 );
INSERT
INTO
COMPANY (
NAME
,AGE,ADDRESS,SALARY)
VALUES
(
'David'
, 27,
'Texas'
, 85000.00 );
INSERT
INTO
COMPANY (
NAME
,AGE,ADDRESS,SALARY)
VALUES
(
'Kim'
, 22,
'South-Hall'
, 45000.00 );
INSERT
INTO
COMPANY (
NAME
,AGE,ADDRESS,SALARY)
VALUES
(
'James'
, 24,
'Houston'
, 10000.00 );
|
这将插入到表COMPANY 7个元组,COMPANY将有以下记录:
ID NAME AGE ADDRESS SALARY ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0 。
个人理解:
1.数据库插入字段:
AUTOINCREMENT(自增加字段)不能重复使用删除的字段的id值,保证了id必须唯一; rowid是找已存在的最大rowid+1,有可能rowid+1(当前的rowid)之前被删除过; 。
2.数据库rowid到达最大之后:
AUTOINCREMENT(自增加字段)会返回SQLITE_FULL错误码; rowid新值会在这个最大数之前随机找一个没被使用字段的id值,可能是之前被删除过的字段; 。
最后此篇关于SQLite之Autoincrement关键字(自动递增)的文章就讲到这里了,如果你想了解更多关于SQLite之Autoincrement关键字(自动递增)的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
SQLite Autoincrement(自动递增) SQLite 的 AUTOINCREMENT 是一个关键字,用于表中的字段值自动递增。我们可以在创建表时在特定的列名称上使用 AUTOINCRE
我有以下 SQLite 表: CREATE TABLE podcast_search ( _id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
我创建了一个带有自动递增字段的数据库: filecur.execute("CREATE TABLE IF NOT EXISTS File_Data (_FID INTEGER PRIMARY KEY
假设我有一个看起来像这样的模型 Issue: class Issue(models.Model): title = models.CharField(max_length=100) a
我正在尝试使用 fts3 在 sqlite3 中创建一个虚拟表,并将一列作为自动增量,但是在插入值时,该列没有被填充。 代码: CREATE VIRTUAL TABLE contact USING f
我正在寻找一种在 MySQL“CREATE VIEW”中插入一种自动增量列的方法。 我使用的 ORM 有一些限制,其中之一是每个表(或 View )必须只有一个唯一标识符... 无论如何......从
我最近发布了一个应用程序:https://my.kendozone.com在 Laravel 5.3/MySQL 中 我正在获取用户,但一件奇怪的事情是我的用户 ID 没有增加 1。 此处最后 10
我想在行计数器更新时模拟自动增量。 我的触发器是: CREATE DEFINER = CURRENT_USER TRIGGER `db`.`token_AFTER_UPDATE` AFTER UPDA
大家好, 我正在尝试制作一个表,其中包含一堆引用用户的 ID,并且对于每个用户,将有多个帖子也应该有自己的 ID。我的问题是如何制作表格,以便在为某个用户插入记录时,他们的帖子 ID 应递增 1。这意
我正在运行一个 fgetcsv 查询,以将一堆数据从 CSV 导入 WordPress。 我想知道如何从某个数字开始自动递增,例如,从 1000 开始。 $import1="INSERT into w
我搜索过堆栈溢出问题,但找不到解决方案。这是我的 SQLite onCreate 代码。 public void onCreate(SQLiteDatabase database) { Str
我正在使用 OleDb 处理 MS Access 数据库文件。这是片段: OleDbCommand command = oleDbConnection.CreateCommand(); command
我在数据库中有一个表,主键是'ID',我想问一下如何让它成为AUTOINCREMENT 我知道这很容易问,但我不知道我该怎么做。 谢谢 最佳答案 有一个属性“Identity Specificatio
我在 AUTOINCREMENT 附近遇到语法错误。这个错误的原因是什么? CREATE TABLE person ( id INTEGER NOT NULL AUTOINCREMENT,
我想将数据上传到雪花表中。雪花表有一个带 AUTOINCREMENT 的主键字段。 当我尝试在没有主键字段的情况下将数据上传到雪花时,我收到了以下错误消息: The COPY failed with
我正在将数据从 csv 导出到 mysql 数据库中,我希望数据库为每个导入的记录生成一个唯一的 id。我想使用唯一字段在 Crystal 报告中生成收据编号。 你认为最好的方法是什么? 最佳答案 如
刚刚开始使用 Sequelize 并尝试在 SQLite 数据库上设置自动增量列。迁移如下所示: return queryInterface.createTable('Users', { id:
假设我有 1000 万个客户名称,每个名称都与一个或多个地址相关联,我想将数据放入 SQL 数据库中。 我创建了一个 Customer 表和一个 Address 表。 Customer 表包含一个自动
嘿,我制作了一个完整的应用程序,但没有添加自动增量列,但现在我需要此列来指定最大 ID,所以我在我的主 Activity 中创建了我的数据库,就像这样。我如何修改它以添加自动增量 _id 列? db
学习 phonegap 以编写适用于 Android 的基本应用程序。出于这个原因使用 WebSQL,我知道它已被弃用,但它仅适用于 Android 手机且无法缩放,因此此时不会为 polyfill
我是一名优秀的程序员,十分优秀!