安卓数据库完整代码是什么
其他 2
-
安卓数据库完整代码主要包括以下几个方面的内容:
- 创建数据库:首先需要创建一个继承自SQLiteOpenHelper的数据库帮助类,该类负责数据库的创建和版本管理。在该类中,需要重写onCreate()方法和onUpgrade()方法,分别用于创建数据库和更新数据库版本。
public class DBHelper extends SQLiteOpenHelper { private static final String DATABASE_NAME = "mydatabase.db"; private static final int DATABASE_VERSION = 1; public DBHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } @Override public void onCreate(SQLiteDatabase db) { String createTableQuery = "CREATE TABLE mytable (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER);"; db.execSQL(createTableQuery); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { String dropTableQuery = "DROP TABLE IF EXISTS mytable;"; db.execSQL(dropTableQuery); onCreate(db); } }- 打开数据库:在需要使用数据库的地方,需要创建一个DBHelper对象,并调用getWritableDatabase()方法获取可写的数据库实例。
DBHelper dbHelper = new DBHelper(context); SQLiteDatabase db = dbHelper.getWritableDatabase();- 插入数据:可以使用ContentValues对象来存储要插入的数据,然后调用insert()方法插入数据。
ContentValues values = new ContentValues(); values.put("name", "John"); values.put("age", 25); db.insert("mytable", null, values);- 查询数据:可以使用query()方法查询数据,并使用Cursor对象遍历查询结果。
Cursor cursor = db.query("mytable", null, null, null, null, null, null); if (cursor.moveToFirst()) { do { int id = cursor.getInt(cursor.getColumnIndex("id")); String name = cursor.getString(cursor.getColumnIndex("name")); int age = cursor.getInt(cursor.getColumnIndex("age")); // 处理查询结果 } while (cursor.moveToNext()); } cursor.close();- 更新和删除数据:可以使用update()方法和delete()方法来更新和删除数据。
ContentValues values = new ContentValues(); values.put("age", 30); db.update("mytable", values, "name=?", new String[]{"John"}); db.delete("mytable", "age>?", new String[]{"30"});通过以上代码,可以实现在安卓应用中创建、打开、插入、查询、更新和删除数据库中的数据。根据具体需求,还可以添加更多的功能和逻辑来完善数据库操作。
1年前 -
安卓数据库的完整代码可以分为以下几个部分:创建数据库、创建表、插入数据、查询数据、更新数据和删除数据。
首先,需要在 AndroidManifest.xml 文件中添加权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>接下来,在自定义的 DatabaseHelper 类中实现数据库的创建和版本管理:
public class DatabaseHelper extends SQLiteOpenHelper { private static final String DATABASE_NAME = "mydatabase.db"; private static final int DATABASE_VERSION = 1; public DatabaseHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } @Override public void onCreate(SQLiteDatabase db) { // 创建表 String createTableQuery = "CREATE TABLE IF NOT EXISTS mytable (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER)"; db.execSQL(createTableQuery); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // 更新数据库版本 if (oldVersion < newVersion) { db.execSQL("DROP TABLE IF EXISTS mytable"); onCreate(db); } } }然后,在需要使用数据库的 Activity 或 Fragment 中,初始化 DatabaseHelper 类,并进行数据库操作:
public class MainActivity extends AppCompatActivity { private DatabaseHelper databaseHelper; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 初始化数据库 databaseHelper = new DatabaseHelper(this); // 插入数据 SQLiteDatabase db = databaseHelper.getWritableDatabase(); ContentValues values = new ContentValues(); values.put("name", "John"); values.put("age", 25); db.insert("mytable", null, values); // 查询数据 Cursor cursor = db.query("mytable", null, null, null, null, null, null); if (cursor.moveToFirst()) { do { int id = cursor.getInt(cursor.getColumnIndex("id")); String name = cursor.getString(cursor.getColumnIndex("name")); int age = cursor.getInt(cursor.getColumnIndex("age")); // 处理数据 // ... } while (cursor.moveToNext()); } cursor.close(); // 更新数据 ContentValues updateValues = new ContentValues(); updateValues.put("age", 30); db.update("mytable", updateValues, "name=?", new String[]{"John"}); // 删除数据 db.delete("mytable", "name=?", new String[]{"John"}); // 关闭数据库连接 db.close(); } }以上就是安卓数据库的完整代码,包括创建数据库、创建表、插入数据、查询数据、更新数据和删除数据的操作。根据具体需求,可以在此基础上进行扩展和修改。
1年前 -
安卓数据库的完整代码包括数据库的创建、表的创建、插入数据、查询数据、更新数据和删除数据等操作。下面是一个完整的示例代码:
- 创建数据库
public class DatabaseHelper extends SQLiteOpenHelper { private static final String DATABASE_NAME = "mydatabase.db"; private static final int DATABASE_VERSION = 1; public DatabaseHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } @Override public void onCreate(SQLiteDatabase db) { String createTableQuery = "CREATE TABLE IF NOT EXISTS mytable (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER)"; db.execSQL(createTableQuery); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { String dropTableQuery = "DROP TABLE IF EXISTS mytable"; db.execSQL(dropTableQuery); onCreate(db); } }- 在Activity中使用数据库
public class MainActivity extends AppCompatActivity { private SQLiteDatabase database; private DatabaseHelper databaseHelper; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); databaseHelper = new DatabaseHelper(this); database = databaseHelper.getWritableDatabase(); } @Override protected void onDestroy() { super.onDestroy(); if (database != null) { database.close(); } } }- 创建表
private void createTable() { String createTableQuery = "CREATE TABLE IF NOT EXISTS mytable (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER)"; database.execSQL(createTableQuery); }- 插入数据
private void insertData(String name, int age) { ContentValues values = new ContentValues(); values.put("name", name); values.put("age", age); database.insert("mytable", null, values); }- 查询数据
private void queryData() { String[] columns = {"name", "age"}; Cursor cursor = database.query("mytable", columns, null, null, null, null, null); if (cursor.moveToFirst()) { do { String name = cursor.getString(cursor.getColumnIndex("name")); int age = cursor.getInt(cursor.getColumnIndex("age")); // 处理数据 } while (cursor.moveToNext()); } cursor.close(); }- 更新数据
private void updateData(int id, String name, int age) { ContentValues values = new ContentValues(); values.put("name", name); values.put("age", age); String whereClause = "id = ?"; String[] whereArgs = {String.valueOf(id)}; database.update("mytable", values, whereClause, whereArgs); }- 删除数据
private void deleteData(int id) { String whereClause = "id = ?"; String[] whereArgs = {String.valueOf(id)}; database.delete("mytable", whereClause, whereArgs); }以上就是安卓数据库的完整代码,包括数据库的创建、表的创建、插入数据、查询数据、更新数据和删除数据等操作。根据实际需求可以在此基础上进行修改和扩展。
1年前