PrimaryKey
public
abstract
@interface
PrimaryKey
implements
Annotation
android.arch.persistence.room.PrimaryKey |
Marks a field in an Entity
as the primary key.
If you would like to define a composite primary key, you should use primaryKeys()
method.
Each Entity
must declare a primary key unless one of its super classes declares a
primary key. If both an Entity
and its super class defines a PrimaryKey
, the
child's PrimaryKey
definition will override the parent's PrimaryKey
.
If PrimaryKey
annotation is used on a Embedded
d field, all columns inherited
from that embedded field becomes the composite primary key (including its grand children
fields).
Summary
Public methods | |
---|---|
boolean
|
autoGenerate()
Set to true to let SQLite generate the unique id. |
Inherited methods | |
---|---|
Public methods
autoGenerate
boolean autoGenerate ()
Set to true to let SQLite generate the unique id.
When set to true
, the SQLite type affinity for the field should be INTEGER
.
If the field type is long
or int
(or its TypeConverter converts it to a
long
or int
), Insert
methods treat 0
as not-set while
inserting the item.
If the field's type is Integer
or Long
(or its TypeConverter converts it to
an Integer
or a Long
), Insert
methods treat null
as
not-set while inserting the item.
Returns | |
---|---|
boolean |
Whether the primary key should be auto-generated by SQLite or not. Defaults to false. |
Annotations
Classes
Enums
Exceptions