0
這是我想創建一個數據庫表Android的SQLite的 - 無法創建表
public class GameDrive extends Activity {
DatabaseHelper databaseHelper;
SQLiteDatabase database;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_game_drive);
getActionBar().setDisplayHomeAsUpEnabled(true);
databaseHelper = new DatabaseHelper(this);
database = databaseHelper.getWritableDatabase();
我MainActivity的提取。 。 。
public class DatabaseHelper extends SQLiteOpenHelper {
private static final String DATABSE_NAME = "database";
private static final String TABLE_NAME = "tripdata";
private static final String COLUMN_ID = "_id";
private static final String COLUMN_TYP = "typ";
private static final String COLUMN_VALUE = "value";
private static final int DATABASE_VERSION = 1;
public DatabaseHelper(Context context){
super(context, DATABSE_NAME, null, DATABASE_VERSION);
Log.d("Database","Constructor called");
}
//database is created for first time. creation of table and initial data inside done here
@Override
public void onCreate(SQLiteDatabase db) {
Log.d("Database","onCreate called");
db.execSQL("CREATE TABLE "+TABLE_NAME+"("+COLUMN_ID+" INTEGER PRIMARY KEY AUTOINCREMENT, "+COLUMN_TYP+" VARCHAR(255),"+COLUMN_VALUE+" VARCHAR(255));");
Log.d("Database","onCreate called succesfuly");
}
//drop tables, add tables etc.
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
try {
db.execSQL("DROP TABLE IF EXISTS TABLE_NAME");
onCreate(db);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
爲什麼Log.d( 「數據庫」, 「所謂的onCreate」)從來沒有達到?啓動應用程序後,只需訪問Log.d(「Database」,「Constructor called」)語句即可。
謝謝!
清除您的數據並再次測試 – 2014-12-02 09:19:18
onCreate將在首次安裝或升級數據庫版本時調用 – 2014-12-02 09:19:32