主頁(yè) > 知識(shí)庫(kù) > SQLite之Autoincrement關(guān)鍵字(自動(dòng)遞增)

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

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

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

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

語法

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

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

例子:

考慮COMPANY表要?jiǎng)?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個(gè)元組,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

個(gè)人理解:

1.數(shù)據(jù)庫(kù)插入字段:

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

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

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

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

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

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《SQLite之Autoincrement關(guān)鍵字(自動(dòng)遞增)》,本文關(guān)鍵詞  SQLite,之,Autoincrement,關(guān)鍵字,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《SQLite之Autoincrement關(guān)鍵字(自動(dòng)遞增)》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于SQLite之Autoincrement關(guān)鍵字(自動(dòng)遞增)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章