第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在SQLite中設(shè)置AUTOINCREMENT的起始值

在SQLite中設(shè)置AUTOINCREMENT的起始值

有只小跳蛙 2019-10-11 10:23:01
如何在SQLite中設(shè)置AUTOINCREMENT字段的起始值?
查看完整描述

3 回答

?
不負(fù)相思意

TA貢獻(xiàn)1777條經(jīng)驗(yàn) 獲得超10個贊

從SQLite網(wǎng)站:


SQLite使用特殊SQLITE_SEQUENCE表跟蹤表曾經(jīng)擁有的最大ROWID 。SQLITE_SEQUENCE每當(dāng)創(chuàng)建包含AUTOINCREMENT列的普通表時,都會自動創(chuàng)建并初始化該表。SQLITE_SEQUENCE可以使用普通的UPDATE,INSERT和DELETE語句修改表的內(nèi)容。但是對此表進(jìn)行修改可能會干擾AUTOINCREMENT密鑰生成算法。進(jìn)行此類更改之前,請確保您知道自己在做什么。


我試過了,它有效:


UPDATE SQLITE_SEQUENCE SET seq = <n> WHERE name = '<table>'

其中n +1是您想要的下一個ROWID,而table是表名。


查看完整回答
反對 回復(fù) 2019-10-11
?
catspeake

TA貢獻(xiàn)1111條經(jīng)驗(yàn) 獲得超0個贊

我正在使用下面的查詢,當(dāng)sqlite_sequence沒有該表的記錄時(即,第一條記錄尚未添加到表中),它解決了該問題,否則它將更新序列。


BEGIN TRANSACTION;


UPDATE sqlite_sequence SET seq = <n> WHERE name = '<table>';


INSERT INTO sqlite_sequence (name,seq) SELECT '<table>', <n> WHERE NOT EXISTS 

           (SELECT changes() AS change FROM sqlite_sequence WHERE change <> 0);

COMMIT;


查看完整回答
反對 回復(fù) 2019-10-11
  • 3 回答
  • 0 關(guān)注
  • 1238 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號