输入数据存入数据库增删改查

activity_main

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main"
    android:layout_width="match_parent" android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context="com.example.mysqlite.MainActivity">
    <EditText
        android:layout_width="match_parent"
        android:textSize="20sp"
        android:hint="请输入id"
        android:id="@+id/id_et"
        android:layout_height="wrap_content" />
    <EditText
        android:layout_width="match_parent"
        android:textSize="20sp"
        android:hint="请输入姓名"
        android:id="@+id/name_et"
        android:layout_height="wrap_content" />
    <EditText
        android:layout_width="match_parent"
        android:textSize="20sp"
        android:hint="请输入年龄"
        android:inputType="phone"
        android:id="@+id/age_et"
        android:layout_height="wrap_content" />
    <EditText
        android:layout_width="match_parent"
        android:textSize="20sp"
        android:hint="请输入性别"
        android:id="@+id/sex_et"
        android:layout_height="wrap_content" />
<LinearLayout
    android:layout_width="match_parent"
    android:orientation="horizontal"
    android:layout_height="wrap_content">
        <Button
            android:layout_weight="1"
            android:onClick="Click"
            android:layout_width="match_parent"
            android:text="添加数据"
            android:id="@+id/insert_bt"
            android:textSize="15sp"
            android:layout_height="wrap_content" />
        <Button
            android:layout_weight="1"
            android:onClick="Click"
            android:layout_width="match_parent"
            android:text="删除数据"
            android:id="@+id/delete_bt"
            android:textSize="15sp"
            android:layout_height="wrap_content" />

        <Button
            android:layout_weight="1"
            android:onClick="Click"
            android:layout_width="match_parent"
            android:text="修改数据"
            android:id="@+id/update_bt"
            android:textSize="15sp"
            android:layout_height="wrap_content" />

        <Button
            android:layout_weight="1"
            android:onClick="Click"
            android:layout_width="match_parent"
            android:text="查询数据"
            android:id="@+id/query_bt"
            android:textSize="15sp"
            android:layout_height="wrap_content" />
    </LinearLayout>
    <ListView
        android:layout_width="match_parent"
        android:id="@+id/info_lv"
        android:layout_height="match_parent" />

</LinearLayout>

item_layout

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal" android:layout_width="match_parent"
    android:layout_height="match_parent">
    <TextView
        android:id="@+id/id_tv"
        android:layout_width="0dp"
        android:layout_height="40dp"
        android:layout_weight="1"/>
    <TextView
        android:id="@+id/name_tv"
        android:layout_width="0dp"
        android:layout_height="40dp"
        android:layout_weight="1"/>
    <TextView
        android:id="@+id/age_tv"
        android:layout_width="0dp"
        android:layout_height="40dp"
        android:layout_weight="1"/>
    <TextView
        android:id="@+id/sex_tv"
        android:layout_width="0dp"
        android:layout_height="40dp"
        android:layout_weight="1"/>
</LinearLayout>
MainActivity
public class MainActivity extends AppCompatActivity {

    private EditText idEt;
    private EditText nameEt;
    private EditText ageEt;
    private EditText sexEt;
    private ListView infoLv;
    private SQLiteHelper helper;
    private SQLiteDatabase db;
    String tableName = "student";
    private Cursor cursor;
    private SimpleCursorAdapter adapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        idEt = (EditText) findViewById(R.id.id_et);
        nameEt = (EditText) findViewById(R.id.name_et);
        ageEt = (EditText) findViewById(R.id.age_et);
        sexEt = (EditText) findViewById(R.id.sex_et);
        infoLv = (ListView) findViewById(R.id.info_lv);
        helper = new SQLiteHelper(this,"mydb.db",null,1);
        db = helper.getWritableDatabase();
        cursor = db.query(tableName,null,null,null,null,null,null,null);
        //实例化适配器,参数1.上下文对象,2.行的布局文件,3.从哪列取值,4.放到哪个控件上,5.标记(观察者
        adapter = new SimpleCursorAdapter(this, R.layout.item_layout,cursor,
                new String[]{"_id","name","age","sex"},
                new int[]{R.id.id_tv,R.id.name_tv,R.id.age_tv,R.id.sex_tv},
                CursorAdapter.FLAG_REGISTER_CONTENT_OBSERVER);
        infoLv.setAdapter(adapter);
    }

    public void Click(View view) {
        String id = idEt.getText().toString();
        String name = nameEt.getText().toString();
        String age = ageEt.getText().toString();
        String sex = sexEt.getText().toString();
        ContentValues values=new ContentValues();
        switch (view.getId()){
            case R.id.insert_bt:
                values.put("name",name);
                values.put("age",age);
                values.put("sex",sex);
                long insert = db.insert(tableName, null, values);
                if (insert>0){
                    Toast.makeText(this, "插入成功", Toast.LENGTH_SHORT).show();
                    idEt.setText("");
                    nameEt.setText("");
                    ageEt.setText("");
                    sexEt.setText("");
                }
                getData();
                break;
            case R.id.delete_bt:
                int delete = db.delete(tableName, "_id = ?", new String[]{id});
                if (delete>0){
                    Toast.makeText(this, "删除成功", Toast.LENGTH_SHORT).show();
                    idEt.setText("");
                    nameEt.setText("");
                    ageEt.setText("");
                    sexEt.setText("");
                }
                getData();
                break;
            case R.id.update_bt:
                values.put("name",name);
                int update = db.update(tableName, values, "_id = ?", new String[]{id});
                if (update>0){
                    Toast.makeText(this, "修改成功", Toast.LENGTH_SHORT).show();
                    idEt.setText("");
                    nameEt.setText("");
                    ageEt.setText("");
                    sexEt.setText("");
                }
                getData();
                break;
            case R.id.query_bt:
                Cursor query = db.query(tableName, null, "sex = ?", new String[]{sex}, null, null, null);
                adapter.changeCursor(query);
                getData();
                idEt.setText("");
                nameEt.setText("");
                ageEt.setText("");
                sexEt.setText("");
                break;
        }
    }

    public void getData() {
        cursor = db.query(tableName, null, null, null, null, null, null, null);
        adapter.changeCursor(cursor);
    }
}
SQLiteHelper
public class SQLiteHelper extends SQLiteOpenHelper {
    public SQLiteHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
        super(context, name, factory, version);
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        db.execSQL("create table if not exists student(_id integer primary key autoincrement,name varchar(10),age integer,sex varchar(4))");
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

    }
}

猜你喜欢

转载自blog.csdn.net/qq_41898048/article/details/80020780
今日推荐