濮阳杆衣贸易有限公司

主頁 > 知識庫 > 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)民參考!
  • 推薦文章
    元朗区| 红桥区| 平利县| 林甸县| 舟山市| 阿巴嘎旗| 贵南县| 吉隆县| 南澳县| 张家口市| 永仁县| 嘉善县| 昌宁县| 安徽省| 佛教| 漳平市| 长葛市| 包头市| 温州市| 隆回县| 宣威市| 北海市| 巴东县| 乡城县| 恩施市| 娄底市| 泰顺县| 林西县| 阳春市| 哈尔滨市| 马龙县| 南乐县| 普洱| 成武县| 德令哈市| 田林县| 任丘市| 莆田市| 武夷山市| 诸城市| 红原县|