以下是实现代码:

activity_main.xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:orientation="vertical"
              android:padding="16dp">

    <EditText
            android:id="@+id/et_username"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="用户名"/>

    <EditText
            android:id="@+id/et_password"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="密码"
            android:inputType="textPassword"/>

    <Button
            android:id="@+id/btn_create_db"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="创建数据库"/>

    <Button
            android:id="@+id/btn_add"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="新增数据"/>

    <Button
            android:id="@+id/btn_update"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="修改数据"/>

    <Button
            android:id="@+id/btn_delete"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="删除数据"/>

    <Button
            android:id="@+id/btn_query"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="查询数据"/>

</LinearLayout>

MainActivity.java:

public class MainActivity extends AppCompatActivity implements View.OnClickListener {

    private EditText etUsername, etPassword;
    private Button btnCreateDb, btnAdd, btnUpdate, btnDelete, btnQuery;
    private SQLiteDatabase db;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        etUsername = findViewById(R.id.et_username);
        etPassword = findViewById(R.id.et_password);
        btnCreateDb = findViewById(R.id.btn_create_db);
        btnAdd = findViewById(R.id.btn_add);
        btnUpdate = findViewById(R.id.btn_update);
        btnDelete = findViewById(R.id.btn_delete);
        btnQuery = findViewById(R.id.btn_query);

        btnCreateDb.setOnClickListener(this);
        btnAdd.setOnClickListener(this);
        btnUpdate.setOnClickListener(this);
        btnDelete.setOnClickListener(this);
        btnQuery.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.btn_create_db:
                createDatabase();
                break;
            case R.id.btn_add:
                addData();
                break;
            case R.id.btn_update:
                updateData();
                break;
            case R.id.btn_delete:
                deleteData();
                break;
            case R.id.btn_query:
                queryData();
                break;
        }
    }

    private void createDatabase() {
        db = openOrCreateDatabase("test.db", MODE_PRIVATE, null);
        db.execSQL("CREATE TABLE IF NOT EXISTS user_info(_id INTEGER PRIMARY KEY AUTOINCREMENT,username TEXT,password TEXT)");
        Toast.makeText(this, "数据库创建成功!", Toast.LENGTH_SHORT).show();
    }

    private void addData() {
        String username = etUsername.getText().toString().trim();
        String password = etPassword.getText().toString().trim();
        if (TextUtils.isEmpty(username) || TextUtils.isEmpty(password)) {
            Toast.makeText(this, "用户名和密码不能为空!", Toast.LENGTH_SHORT).show();
            return;
        }
        ContentValues values = new ContentValues();
        values.put("username", username);
        values.put("password", password);
        long id = db.insert("user_info", null, values);
        if (id != -1) {
            Toast.makeText(this, "新增数据成功!", Toast.LENGTH_SHORT).show();
        } else {
            Toast.makeText(this, "新增数据失败!", Toast.LENGTH_SHORT).show();
        }
    }

    private void updateData() {
        String username = etUsername.getText().toString().trim();
        String password = etPassword.getText().toString().trim();
        if (TextUtils.isEmpty(username) || TextUtils.isEmpty(password)) {
            Toast.makeText(this, "用户名和密码不能为空!", Toast.LENGTH_SHORT).show();
            return;
        }
        ContentValues values = new ContentValues();
        values.put("password", password);
        int rows = db.update("user_info", values, "username=?", new String[]{username});
        if (rows > 0) {
            Toast.makeText(this, "修改数据成功!", Toast.LENGTH_SHORT).show();
        } else {
            Toast.makeText(this, "修改数据失败!", Toast.LENGTH_SHORT).show();
        }
    }

    private void deleteData() {
        String username = etUsername.getText().toString().trim();
        if (TextUtils.isEmpty(username)) {
            Toast.makeText(this, "用户名不能为空!", Toast.LENGTH_SHORT).show();
            return;
        }
        int rows = db.delete("user_info", "username=?", new String[]{username});
        if (rows > 0) {
            Toast.makeText(this, "删除数据成功!", Toast.LENGTH_SHORT).show();
        } else {
            Toast.makeText(this, "删除数据失败!", Toast.LENGTH_SHORT).show();
        }
    }

    private void queryData() {
        Cursor cursor = db.query("user_info", null, null, null, null, null, null);
        if (cursor != null && cursor.moveToFirst()) {
            do {
                int id = cursor.getInt(cursor.getColumnIndex("_id"));
                String username = cursor.getString(cursor.getColumnIndex("username"));
                String password = cursor.getString(cursor.getColumnIndex("password"));
                Log.i("MainActivity", "id: " + id + ", username: " + username + ", password: " + password);
            } while (cursor.moveToNext());
            cursor.close();
        } else {
            Toast.makeText(this, "查询数据失败或表格为空!", Toast.LENGTH_SHORT).show();
        }
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        if (db != null) {
            db.close();
        }
    }
}
实验要求:在一个Activity界面上有两个输入框分别是用户名和密码。还有5个按钮分别是创建数据库新增数据、修改数据、删除数据、查询数据。其中创建数据库按钮的功能是创建一个testdb数据库同时创建一张表user_info用于存储用户信息包括用户名、密码和自增主键id;新增数据按钮功能是将输入框中的数据存入user_info表中;修改数据按钮功能是修改用户的密码;删除数据按钮功能是删除用户信息;查

原文地址: https://www.cveoy.top/t/topic/bTBV 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录