共計 1672 個字符,預計需要花費 5 分鐘才能閱讀完成。
自動寫代碼機器人,免費開通
這篇文章給大家介紹 SQLite 中 Autoincrement 關(guān)鍵字如何使用,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
SQLite 的 AUTOINCREMENT 是一個關(guān)鍵字,用于表中的字段值自動遞增。我們可以在創(chuàng)建表時在特定的列名稱上使用 AUTOINCREMENT 關(guān)鍵字實現(xià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.02 Allen 25 Texas 15000.03 Teddy 23 Norway 20000.04 Mark 25 Rich-Mond 65000.05 David 27 Texas 85000.06 Kim 22 South-Hall 45000.07 James 24 Houston 10000.0
個人理解:
1. 數(shù)據(jù)庫插入字段:
AUTOINCREMENT(自增加字段)不能重復使用刪除的字段的 id 值,保證了 id 必須唯一;rowid 是找已存在的最大 rowid+1,有可能 rowid+1(當前的 rowid)之前被刪除過;
2. 數(shù)據(jù)庫 rowid 到達最大之后:
AUTOINCREMENT(自增加字段)會返回 SQLITE_FULL 錯誤碼;rowid 新值會在這個最大數(shù)之前隨機找一個沒被使用字段的 id 值,可能是之前被刪除過的字段;
關(guān)于 SQLite 中 Autoincrement 關(guān)鍵字如何使用就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
向 AI 問一下細節(jié)