网友通过本文主要向大家介绍了android数据库操作,android 数据库操作类,android中数据库操作,android 数据库,android 数据库框架等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
Android 数据库操作,android数据库操作
faef
1 public class MainActivity extends AppCompatActivity { 2 3 private MyDatabaseHelper dbHelper; 4 5 @Override 6 protected void onCreate(Bundle savedInstanceState) { 7 super.onCreate(savedInstanceState); 8 setContentView(R.layout.activity_main); 9 10 dbHelper = new MyDatabaseHelper(this, "BookStore.db", null, 3); // 执行这句并不会创建数据库文件 11 Button btnCreateDatabase = (Button) findViewById(R.id.button); 12 btnCreateDatabase.setOnClickListener(new View.OnClickListener() { 13 @Override 14 public void onClick(View v) { 15 dbHelper.getWritableDatabase(); // 执行这句才会创建数据库文件 16 } 17 }); 18 19 } 20 }
fewaf
1 public class MyDatabaseHelper extends SQLiteOpenHelper { 2 3 public static final String CREATE_BOOK = "create table book (" + 4 "id integer primary key autoincrement, " + 5 "author text, " + 6 "price real," + 7 "pages integer, " + 8 "name text)"; 9 10 private Context mContext; 11 12 public MyDatabaseHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) { 13 super(context, name, factory, version); 14 15 mContext = context; 16 } 17 18 /** 19 * 数据库已经创建过了, 则不会执行到,如果不存在数据库则会执行 20 * @param db 21 */ 22 @Override 23 public void onCreate(SQLiteDatabase db) { 24 db.execSQL(CREATE_BOOK); // 执行这句才会创建表 25 26 Toast.makeText(mContext, "create succeeded", Toast.LENGTH_SHORT).show(); 27 28 } 29 30 /** 31 * 创建数据库时不会执行,增大版本号升级时才会执行到 32 * @param db 33 * @param oldVersion 34 * @param newVersion 35 */ 36 @Override 37 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 38 // 在这里面可以把旧的表 drop掉 从新创建新表, 39 // 但如果数据比较重要更好的做法还是把旧表的数据迁移到新表上,比如升级qq聊天记录被删掉肯定招骂 40 Toast.makeText(mContext, "onUpgrade oldVersion:" + oldVersion + " newVersion:" + newVersion, Toast.LENGTH_SHORT).show(); 41 } 42 }
feawf