Android——SQLite

介绍

  SQLite是安卓内置的数据库,支持NULL,INTEGER,REAL,TEXT,BLOB

 

使用

  首先记住一点,对于where条件,是带有占位符的。 -----》 where id = ? and  username = ? -----》 "id = ? and username = ?" , new String [] { id , username }

  SQLite主要五个方法:

    long insert ( String table , String nullColumnHack , ContentValues values  )

      参数:

        String table:表名

        String nullColumHack:未知

        ContentValues values:包含字段名称和字段值.

      返回值:long

      返回值意义:插入条数

      作用:先数据库中表table插入数据

 

     Cursor query( String table , String [] columns ,String selection , String [] selectionArgs , String groupBy , String having , String orderBy )

      参数:

        String table:表名

        String [] columns : 查询字段

        String selection:查询条件

        String [] selectionArgs:查询条件赋值

        其它自己看,不需要就null

      返回值:Cursor

      返回值意义:类似ResultSet的Cursor

      作用:查询数据库里的数据,获得游标

 

      int Update( String table ,ContentValues values , String whereClause , String [] whereArg )

        参数:

          String table:表名

          ContentValues contentvalues:字段名和字段值

          String whereClause:条件语句

          String [] whereArg:条件语句赋值占位符

        返回值:int

        返回值意义:修改多少条语句

        作用:修改表内容

      

      int delete( String table ,String whereClause , String [] whereArg)

        参数:

          String table : 表名

          String whereClause:条件

          String[] whereArg:占位符赋值

        返回值:int

        返回值意义:删除多少条记录

        作用:删除表中的数据

 

      void execSQL(String sql )

        参数:

          String sql:sql语句

        返回值:无

        返回值意义:无

        作用:执行sql语句

 

SQLite主要使用就是这五种方法,其它都是简单的要死

 

SQLiteOpenHelper --- 创库创表 --  在构造方法内创建数据库,在onCreate() 方法中使用db创建数据表

SQLiteDataBase通过 SQLiteOpenHelper.getReadxxxxx()获取数据库。

 

使用:

class MyListener implements View.OnClickListener{

        @Override
        public void onClick(View v) {
            SQLiteOpenHelperDemo sqLiteOpenHelperDemo = new SQLiteOpenHelperDemo(SQLiteDemo.this,null,null,1);
            SQLiteDatabase db = sqLiteOpenHelperDemo.getReadableDatabase();
            switch ( v.getId() ){
                case R.id.btn_write:
                    String content = edt_content.getText().toString();
                    ContentValues contentValues = new ContentValues();
                    contentValues.put("uname",edt_content.getText().toString());
                    db.insert("user",null,contentValues);
                    Toast.makeText(SQLiteDemo.this,"写入完成",Toast.LENGTH_SHORT).show();
                    break;

                case R.id.btn_read:
                    Cursor cursor = db.query("user", new String[]{"uname"}, null, null, null, null, null);
                    String cont = "";
                    while ( cursor.moveToNext() ){
                        String str = cursor.getString(cursor.getColumnIndex("uname"));
                        cont += str;
                        txt_content.setText(cont);
                    }
                    break;
            }
        }
    }

 

posted @ 2021-10-18 20:39  remix_alone  阅读(89)  评论(0)    收藏  举报