可以将文本或字符串作为sqlite android中的主键
你好,我有这样的json,现在我想把这个json保存到sqlite android,但是 我不知道如何为这个json创建一个表,json结果是字符串/文本类型,但是我们知道在创建表sqlite中,我们需要类型为integer的数据作为主键 我想使用UserId作为主键,但这是text/string类型 我的问题是我可以创建以字符串/文本为主键的表吗? 如果您有其他方法将此json保存到sqlite,请告诉我如何操作。先谢谢你可以将文本或字符串作为sqlite android中的主键,android,sql,json,database,sqlite,Android,Sql,Json,Database,Sqlite,你好,我有这样的json,现在我想把这个json保存到sqlite android,但是 我不知道如何为这个json创建一个表,json结果是字符串/文本类型,但是我们知道在创建表sqlite中,我们需要类型为integer的数据作为主键 我想使用UserId作为主键,但这是text/string类型 我的问题是我可以创建以字符串/文本为主键的表吗? 如果您有其他方法将此json保存到sqlite,请告诉我如何操作。先谢谢你 [ { "UserId": "3c652f
[
{
"UserId": "3c652fc4-5dc4-4fa5-8c07-d27b0b657823",
"Nationality": "ID",
"Image": null,
"IsAlreadyOnTextoaser": true,
"IsAlreadyOnRequest": false,
"LastActive": null,
"LastActiveResume": "0 Days Ago",
"FirstName": "dwi",
"LastName": "wahyudi"
},
{
"UserId": "cbb1f8bd-8016-4bc6-abd1-701fb353293d",
"Nationality": "ID",
"Image": null,
"IsAlreadyOnTextoaser": true,
"IsAlreadyOnRequest": false,
"LastActive": null,
"LastActiveResume": "0 Days Ago",
"FirstName": "Wildan",
"LastName": "Rachman"
}
]
Android框架的许多部分都希望您的数据具有唯一的整数列,称为
\u id
(获取此类列的最简单方法是将其设置为自动递增主键,但如果您的数据已经有此类列,或者如果可以从其他值轻松计算唯一值,则不需要显式主键。)
虽然主键约束文档中的列标识行,但实际的技术效果与NOTNULL和UNIQUE相同。因此,您的表中可以有多个候选键:
CREATE TABLE MyTable (
_id INTEGER PRIMARY KEY, -- autoincrementing, for Android
UserId TEXT NOT NULL UNIQUE, -- actual PK
FirstName TEXT,
[...]
);
可以将主键创建为字符串。试试这个