gpt4 book ai didi

android - 你能改变 SQLite (Android) 中的 _id autoincrement 字段吗?

转载 作者:行者123 更新时间:2023-11-29 15:23:47 25 4
gpt4 key购买 nike

我有一个带有 SQLite 的 Android 应用程序,并在创建表时使用以下行:

_id integer primary key autoincrement

我的问题是,如果我的用户愿意,我可以更新这一行并更改 _id 吗?因此,例如,我将在数据库中有两条记录:

1 My First Record
2 My Second Record

更新后,我想要这样的东西:

1 My First Record
38 My Second Record

SQLite 会允许并轻松适应吗?即下一个自动创建的主键将是#39?

最佳答案

作为documented , 允许更改 _id 并将正确更新自动增量序列。

试一试:

$ sqlite3
SQLite version 3.7.16 2013-01-11 09:58:54
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> CREATE TABLE MyTable(_id INTEGER PRIMARY KEY AUTOINCREMENT);
sqlite> INSERT INTO MyTable DEFAULT VALUES;
sqlite> INSERT INTO MyTable DEFAULT VALUES;
sqlite> UPDATE MyTable SET _id = 38 WHERE _id = 2;
sqlite> INSERT INTO MyTable DEFAULT VALUES;
sqlite> SELECT * FROM MyTable;
1
38
39

关于android - 你能改变 SQLite (Android) 中的 _id autoincrement 字段吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15312887/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com