以下是Android中使用SQLite数据库的示例:
- 创建数据库帮助类
public class DatabaseHelper extends SQLiteOpenHelper {
public static final String DATABASE_NAME = "mydb.db";
public static final String TABLE_NAME = "mytable";
public static final String COL_ID = "id";
public static final String COL_NAME = "name";
public static final int DATABASE_VERSION = 1;
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
String CREATE_TABLE = "CREATE TABLE " + TABLE_NAME + "("
+ COL_ID + " INTEGER PRIMARY KEY,"
+ COL_NAME + " TEXT)";
db.execSQL(CREATE_TABLE);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
String DROP_TABLE = "DROP TABLE IF EXISTS " + TABLE_NAME;
db.execSQL(DROP_TABLE);
onCreate(db);
}
}
- 插入数据
DatabaseHelper dbHelper = new DatabaseHelper(this);
SQLiteDatabase db = dbHelper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(DatabaseHelper.COL_NAME, "John");
long rowId = db.insert(DatabaseHelper.TABLE_NAME, null, values);
db.close();
- 查询数据
DatabaseHelper dbHelper = new DatabaseHelper(this);
SQLiteDatabase db = dbHelper.getReadableDatabase();
String[] columns = {DatabaseHelper.COL_ID, DatabaseHelper.COL_NAME};
Cursor cursor = db.query(DatabaseHelper.TABLE_NAME, columns, null, null, null, null, null);
while (cursor.moveToNext()) {
int id = cursor.getInt(cursor.getColumnIndex(DatabaseHelper.COL_ID));
String name = cursor.getString(cursor.getColumnIndex(DatabaseHelper.COL_NAME));
Log.d(TAG, "ID: " + id + ", Name: " + name);
}
cursor.close();
db.close();
- 更新数据
DatabaseHelper dbHelper = new DatabaseHelper(this);
SQLiteDatabase db = dbHelper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(DatabaseHelper.COL_NAME, "Peter");
String whereClause = DatabaseHelper.COL_ID + "=?";
String[] whereArgs = {"1"};
int rowsAffected = db.update(DatabaseHelper.TABLE_NAME, values, whereClause, whereArgs);
db.close();
- 删除数据
DatabaseHelper dbHelper = new DatabaseHelper(this);
SQLiteDatabase db = dbHelper.getWritableDatabase();
String whereClause = DatabaseHelper.COL_ID + "=?";
String[] whereArgs = {"1"};
int rowsAffected = db.delete(DatabaseHelper.TABLE_NAME, whereClause, whereArgs);
db.close();
安卓数据库是指在安卓系统中使用的数据存储方式,它是以文件形式存在于设备中的一种数据库系统。以下是一个使用安卓数据库的例子:
首先,我们需要创建一个数据库帮助类来帮助我们管理数据库,例如:
public class DatabaseHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "example.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) {
db.execSQL("CREATE TABLE users (_id INTEGER PRIMARY KEY AUTOINCREMENT, "
+ "name TEXT, email TEXT);");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS users");
onCreate(db);
}
}
在上述代码中,我们定义了一个名为DatabaseHelper
的类,并使用继承自SQLiteOpenHelper
的方式来创建该类。其中,DATABASE_NAME
表示我们要创建的数据库的名称,DATABASE_VERSION
表示该数据库的版本号。
在onCreate
方法中,我们使用SQL语句来创建一个名为users
的表,包括三个字段:_id
、name
和email
。其中,_id
是一个自增的整型字段,并作为主键,name
和email
是文本字段,用来存储用户的姓名和邮箱地址。
在onUpgrade
方法中,我们在有新版本发布时,先删除旧的数据表users
,然后重新创建一个新的数据表。
下面是如何在应用程序中使用数据库帮助类的例子:
public class MainActivity extends AppCompatActivity {
private DatabaseHelper dbHelper;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
dbHelper = new DatabaseHelper(this);
SQLiteDatabase db = dbHelper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("name", "John");
values.put("email", "john@example.com");
long newRowId = db.insert("users", null, values);
}
@Override
protected void onDestroy() {
super.onDestroy();
dbHelper.close();
}
}
在上述代码中,我们首先在MainActivity
的onCreate
方法中创建了一个DatabaseHelper
对象,然后使用getWritabaleDatabase
方法获取SQLiteDatabase对象,该对象用于执行数据库操作。接着,我们使用ContentValues
对象将要存储的数据值映射到users
表中的字段上,并最后使用insert
方法将数据插入到数据库中。
在MainActivity
的onDestroy
方法中,我们调用了dbHelper.close()
,用于关闭数据库和相关的资源。
这是一个简单的使用安卓数据库的例子,当然操作数据库还有很多其他的方法可以使用。
发布者:luotuoemo,转转请注明出处:https://www.jintuiyun.com/157018.html