濮阳杆衣贸易有限公司

主頁 > 知識庫 > SQLite之Autoincrement關(guān)鍵字(自動遞增)

SQLite之Autoincrement關(guān)鍵字(自動遞增)

熱門標(biāo)簽:濮陽清豐400開頭的電話申請 地圖標(biāo)注可以編輯地名嗎 疫情時期電話機(jī)器人 南通智能外呼系統(tǒng)怎么樣 臺灣外呼系統(tǒng)軟件 地圖標(biāo)注跑線下市場 樂昌電話機(jī)器人 真3地圖標(biāo)注 南京怎么申請400這種電話

SQLite 的 AUTOINCREMENT 是一個關(guān)鍵字,用于表中的字段值自動遞增。我們可以在創(chuàng)建表時在特定的列名稱上使用 AUTOINCREMENT 關(guān)鍵字實現(xiàn)該字段值的自動增加。

注意點(diǎn):整型字段可以使用關(guān)鍵字AUTOINCREMENT。

語法

AUTOINCREMENT關(guān)鍵字的基本用法如下:

CREATE TABLE table_name(
  column1 INTEGER AUTOINCREMENT,
  column2 datatype,
  column3 datatype,
  .....
  columnN datatype,
);

例子:

考慮COMPANY表要創(chuàng)建如下:

sqlite> CREATE TABLE COMPANY(
  ID INTEGER PRIMARY KEY  AUTOINCREMENT,
  NAME      TEXT   NOT NULL,
  AGE      INT    NOT NULL,
  ADDRESS    CHAR(50),
  SALARY     REAL
);

現(xiàn)在,以下記錄插入到表 COMPANY:

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.數(shù)據(jù)庫插入字段:

AUTOINCREMENT(自增加字段)不能重復(fù)使用刪除的字段的id值,保證了id必須唯一;
rowid是找已存在的最大rowid+1,有可能rowid+1(當(dāng)前的rowid)之前被刪除過;

2.數(shù)據(jù)庫rowid到達(dá)最大之后:

AUTOINCREMENT(自增加字段)會返回SQLITE_FULL錯誤碼;
rowid新值會在這個最大數(shù)之前隨機(jī)找一個沒被使用字段的id值,可能是之前被刪除過的字段;

您可能感興趣的文章:
  • Sqlite數(shù)據(jù)庫里插入數(shù)據(jù)的條數(shù)上限是500
  • SQLite教程(八):命令行工具介紹
  • SQLite教程(十二):鎖和并發(fā)控制詳解
  • SQLite教程(十四):C語言編程實例代碼(2)
  • python查詢sqlite數(shù)據(jù)表的方法

標(biāo)簽:馬鞍山 廣安 南京 通遼 陜西 福建 阿里 河北

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《SQLite之Autoincrement關(guān)鍵字(自動遞增)》,本文關(guān)鍵詞  SQLite,之,Autoincrement,關(guān)鍵字,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《SQLite之Autoincrement關(guān)鍵字(自動遞增)》相關(guān)的同類信息!
  • 本頁收集關(guān)于SQLite之Autoincrement關(guān)鍵字(自動遞增)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    麻阳| 瓦房店市| 牟定县| 万山特区| 大同县| 辽阳市| 禄丰县| 新密市| 宁海县| 新乡县| 广德县| 潞城市| 吉木萨尔县| 运城市| 阿克苏市| 博罗县| 巴里| 泾川县| 乐业县| 莫力| 浪卡子县| 衡水市| 都江堰市| 抚顺县| 甘洛县| 文山县| 松桃| 东乌| 酒泉市| 安康市| 清新县| 万州区| 钟山县| 文成县| 哈密市| 玉林市| 潜山县| 贺兰县| 龙海市| 保靖县| 丹凤县|