Android 新增页面使用sqlite实现增加数据
时间: 2023-12-09 19:06:10 浏览: 43
要在 Android 中使用 SQLite 实现新增数据,需要执行以下步骤:
1. 首先,创建一个 SQLite 数据库并创建一个表,用于存储数据。
```
public class DatabaseHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "mydatabase.db";
private static final int DATABASE_VERSION = 1;
private static final String TABLE_NAME = "mytable";
private static final String COLUMN_ID = "id";
private static final String COLUMN_NAME = "name";
private static final String COLUMN_AGE = "age";
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
String createTable = "CREATE TABLE " + TABLE_NAME + " (" +
COLUMN_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
COLUMN_NAME + " TEXT, " +
COLUMN_AGE + " INTEGER)";
db.execSQL(createTable);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
onCreate(db);
}
}
```
2. 在需要添加数据的 Activity 中,实例化 DatabaseHelper 类,并获取 SQLiteDatabase 对象。
```
DatabaseHelper dbHelper = new DatabaseHelper(this);
SQLiteDatabase db = dbHelper.getWritableDatabase();
```
3. 创建一个 ContentValues 对象,将要插入的数据放入其中。
```
ContentValues contentValues = new ContentValues();
contentValues.put(DatabaseHelper.COLUMN_NAME, "John");
contentValues.put(DatabaseHelper.COLUMN_AGE, 25);
```
4. 使用 insert() 方法将数据插入到表中。
```
long result = db.insert(DatabaseHelper.TABLE_NAME, null, contentValues);
if (result == -1) {
Toast.makeText(this, "Failed to add data.", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(this, "Data added successfully.", Toast.LENGTH_SHORT).show();
}
```
完整的示例代码如下所示:
```
public class MainActivity extends AppCompatActivity {
private EditText etName, etAge;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
etName = findViewById(R.id.et_name);
etAge = findViewById(R.id.et_age);
findViewById(R.id.btn_add).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String name = etName.getText().toString().trim();
int age = Integer.parseInt(etAge.getText().toString().trim());
DatabaseHelper dbHelper = new DatabaseHelper(MainActivity.this);
SQLiteDatabase db = dbHelper.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put(DatabaseHelper.COLUMN_NAME, name);
contentValues.put(DatabaseHelper.COLUMN_AGE, age);
long result = db.insert(DatabaseHelper.TABLE_NAME, null, contentValues);
if (result == -1) {
Toast.makeText(MainActivity.this, "Failed to add data.", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(MainActivity.this, "Data added successfully.", Toast.LENGTH_SHORT).show();
}
}
});
}
}
```