Android怎么使用数据库介绍
发布时间:2021-12-13 12:32:05 所属栏目:PHP教程 来源:互联网
导读:Android怎么使用数据。 数据库操作起来还比较简单,但是缓存就比较难了。独立项目的缓存技术就够呛的了。这里先贴下数据库的代码吧! 创建数据库的代码: package com.example.ex_templete; import android.content.Context; import android.database.sqlite
Android怎么使用数据。 数据库操作起来还比较简单,但是缓存就比较难了。独立项目的缓存技术就够呛的了。这里先贴下数据库的代码吧! 创建数据库的代码: package com.example.ex_templete; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; public class MySqliteHelper extends SQLiteOpenHelper { public MySqliteHelper(Context context, int version) { super(context, "cache.db", null, version); } @Override public void onCreate(SQLiteDatabase db) { String sql = "CREATE TABLE person( " + "persionid INTEGER PRIMARY KEY AUTOINCREMENT," + "name VARCHAR(20), " + "phone VARCHAR(20))"; db.execSQL(sql); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { db.execSQL("ALTER TABLE person ADD salary"); } } 使用数据库的代码: package com.example.ex_templete; import java.util.ArrayList; import android.Manifest.permission; import android.os.Bundle; import android.app.Activity; import android.content.ContentValues; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.TextView; public class MainActivity extends Activity implements OnClickListener { private SQLiteDatabase mSqlDB; private TextView mTextView; @Override public void onClick(View v) { switch (v.getId()) { case R.id.button1: insert(); break; case R.id.button2: delete(); break; case R.id.button3: update(); break; case R.id.button4: select(); break; default: break; } } private void select() { String sql = "SELECT phone, name FROM person WHERE name=? ORDER BY name DESC"; Cursor cursor = mSqlDB.rawQuery(sql, new String[]{"Android"}); // Cursor cursor = mSqlDB.query("person", new String[]{"phone", "name"}, "name=?", new String[]{"Android"}, null, null, null); boolean hasData = cursor.moveToFirst(); ArrayList<Person> mData = new ArrayList<MainActivity.Person>(); while (hasData) { Person person = new Person(); person.name = cursor.getString(cursor.getColumnIndex("name")); person.phone = cursor.getString(cursor.getColumnIndex("phone")); mData.add(person); hasData = cursor.moveToNext(); } mTextView.setText(mData.toString()); } class Person { String name; String phone; @Override public String toString() { return "Person [name=" + name + ", phone=" + phone + "]"; } } private void update() { // String sql = "UPDATE person SET phone=? WHERE name='Android'"; // mSqlDB.execSQL(sql , new String[]{"133333333"}); ContentValues values = new ContentValues(); values.put("phone", "133333333"); mSqlDB.update("person", values, "name=?", new String[]{"Android"}); } private void delete() { // String sql = "DELETE FROM person WHERE name='Android'"; // mSqlDB.execSQL(sql ); mSqlDB.delete("person", "name=?", new String[]{"Android"}); } private void insert() { // String sql = "INSERT INTO person (name, phone) VALUES" + // " ('Android', '13888888888')"; // mSqlDB.execSQL(sql); ContentValues values = new ContentValues(); values.put("name", "Android"); values.put("phone", "13888889999"); mSqlDB.insert("person", null, values); } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findViewById(R.id.button1).setOnClickListener(this); findViewById(R.id.button2).setOnClickListener(this); findViewById(R.id.button3).setOnClickListener(this); findViewById(R.id.button4).setOnClickListener(this); mTextView = (TextView) findViewById(R.id.textView1); MySqliteHelper mSqliteHelper = new MySqliteHelper(this, 1); mSqlDB = mSqliteHelper.getWritableDatabase(); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } } ![]() (编辑:云计算网_泰州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |