创建唯一复合列的语法 - Android SQLiteOpenHelper
Syntax to create unique composite column - Android SQLiteOpenHelper
我的 SQLiteOpenHelper
中有这个 onCreate
方法
class,我想在这两列(复合唯一列)上添加一个唯一约束:
SongContract.SongEntry.COLUMN_TITLE
SongContract.SongEntry.COLUMN_RELEASEDATE
但是我得到一个错误:
Cannot resolve method UNIQUE
这是我的代码:
public void onCreate(SQLiteDatabase db) {
final String SQL_CREATE_SONG_TABLE = "CREATE TABLE " + SongContract.SongEntry.TABLE_SONG + " (" +
SongContract.SongEntry._ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
SongContract.SongEntry.COLUMN_TITLE + " TEXT NOT NULL, " +
SongContract.SongEntry.COLUMN_RELEASEDATE + " INTEGER, " +
UNIQUE(SongContract.SongEntry.COLUMN_TITLE, SongContract.SongEntry.COLUMN_RELEASEDATE) +
SongContract.SongEntry.COLUMN_RATING + " TEXT);";
db.execSQL(SQL_CREATE_SONG_TABLE);
}
实现我的目标的正确语法是什么?
我在尝试了 sqllite 之后找到了正确的语法:
最终字符串 SQL_CREATE_SONG_TABLE = "CREATE TABLE " + SongContract.SongEntry.TABLE_SONG + " (" +
SongContract.SongEntry._ID + "整数主键自增," +
SongContract.SongEntry.COLUMN_TITLE + "文本不为空," +
SongContract.SongEntry.COLUMN_RELEASEDATE + "整数不为空," +
SongContract.SongEntry.COLUMN_RATING + " TEXT, " + "UNIQUE" + "(" +
SongContract.SongEntry.COLUMN_TITLE + "," + SongContract.SongEntry.COLUMN_RELEASEDATE + ") " + ");";
我的 SQLiteOpenHelper
中有这个 onCreate
方法
class,我想在这两列(复合唯一列)上添加一个唯一约束:
SongContract.SongEntry.COLUMN_TITLE
SongContract.SongEntry.COLUMN_RELEASEDATE
但是我得到一个错误:
Cannot resolve method UNIQUE
这是我的代码:
public void onCreate(SQLiteDatabase db) {
final String SQL_CREATE_SONG_TABLE = "CREATE TABLE " + SongContract.SongEntry.TABLE_SONG + " (" +
SongContract.SongEntry._ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
SongContract.SongEntry.COLUMN_TITLE + " TEXT NOT NULL, " +
SongContract.SongEntry.COLUMN_RELEASEDATE + " INTEGER, " +
UNIQUE(SongContract.SongEntry.COLUMN_TITLE, SongContract.SongEntry.COLUMN_RELEASEDATE) +
SongContract.SongEntry.COLUMN_RATING + " TEXT);";
db.execSQL(SQL_CREATE_SONG_TABLE);
}
实现我的目标的正确语法是什么?
我在尝试了 sqllite 之后找到了正确的语法:
最终字符串 SQL_CREATE_SONG_TABLE = "CREATE TABLE " + SongContract.SongEntry.TABLE_SONG + " (" + SongContract.SongEntry._ID + "整数主键自增," + SongContract.SongEntry.COLUMN_TITLE + "文本不为空," + SongContract.SongEntry.COLUMN_RELEASEDATE + "整数不为空," + SongContract.SongEntry.COLUMN_RATING + " TEXT, " + "UNIQUE" + "(" + SongContract.SongEntry.COLUMN_TITLE + "," + SongContract.SongEntry.COLUMN_RELEASEDATE + ") " + ");";