BST*_*aal 33 sqlite android android-sqlite
我ContentProvider使用以下行为我创建了一个表 :
static final String CREATE_DB_TABLE =
" CREATE TABLE " + CONTACTS_TABLE_NAME +
" (_id INTEGER PRIMARY KEY AUTOINCREMENT, " +
" pid TEXT NOT NULL, " +
" name TEXT NOT NULL,"+
"number TEXT NOT NULL);";
Run Code Online (Sandbox Code Playgroud)
它有4列.现在我想添加一个布尔值为true/false的列.如果我必须添加一个名为"status"的布尔列,我如何添加append/change这个语句.
Fan*_*mas 62
你可以使用这样的东西:
创建你的表:
static final String CREATE_DB_TABLE =
"CREATE TABLE " + CONTACTS_TABLE_NAME " +
" (_id INTEGER PRIMARY KEY AUTOINCREMENT," +
"..." + " flag INTEGER DEFAULT 0)";
Run Code Online (Sandbox Code Playgroud)
检索您的价值:
Boolean flag = (cursor.getInt(cursor.getColumnIndex("flag")) == 1);
Run Code Online (Sandbox Code Playgroud)
My *_*God 16
如MD所述,
SQLite没有单独的布尔存储类.相反,布尔值存储为整数0(假)和1(真).
使用以下ALTER语句 -
ALTER TABLE CREATE_DB_TABLE ADD status boolean NOT NULL default 0;
Run Code Online (Sandbox Code Playgroud)
然后你可以使用Cursor获取所需的值,然后转换为实际的布尔值 -
flag=cursor.getString(0).equals("1")
Run Code Online (Sandbox Code Playgroud)
您可以使用此标志在用户屏幕上显示.
参考:http://www.sqlite.org/datatype3.html
| 归档时间: |
|
| 查看次数: |
54266 次 |
| 最近记录: |