我有一个SQLite表,并希望暂时使用默认值设置它。我怎么能这样做?
以下是我的DatabaseHelper类代码:
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class DatabaseHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME="iFall.db";
public static final String TIME="time";
//public static final String STATUS="status";
//public static final String MINES="loadmines";
//public static final String OPENTILE="openTile";
public DatabaseHelper(Context context)
{
super(context,DATABASE_NAME,null,1);
}
@Override
public void onCreate(SQLiteDatabase arg0) {
// TODO Auto-generated method stub
//CREATE TABLE minesweeper(_id INTEGER PRIMARY KEY AUTOINCREMENT,userId TEXT
arg0.execSQL("CREATE TABLE finalP(_id INTEGER PRIMARY KEY AUTOINCREMENT,time TEXT);");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
db.execSQL("DROP TABLE IF EXISTS finalP");
onCreate(db);
}
}
我想为列时间分配一个默认值,即50。
答案 0 :(得分:16)
我相信你可以这样做:
arg0.execSQL("CREATE TABLE finalP(_id INTEGER PRIMARY KEY AUTOINCREMENT,time TEXT DEFAULT \'50\');");
它应该可以正常工作。
有关列约束,请参阅sqlite文档。 http://www.sqlite.org/syntaxdiagrams.html#column-constraint
答案 1 :(得分:0)
创建表权限(代码布尔默认'false'); 它用于布尔类型,但您可以将其用于文本类型