Android Studio - 첨삭 수정 - 로그인 기능

16002 단어
SQLite 데이터베이스에 대한 일반적인 작업:
 
create table if not exists   (  1   (  ),  2   (  ),...)//         

drop table if exists   //   

insert into    (  1,  2,  3 ...) values ( 1, 2, 3 ...);// 
insert into       select * from     ;

delete from    where      //  

update    set   1= 1,  2= 2... where      //  

select * from    where      // 

인스턴스:
 
1、먼저 DBHelper 클래스를 만듭니다(DBOpenHelper.java)
 
여기서 창고 작성, 테이블 작성 작업을 수행합니다.
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.database.sqlite.SQLiteDatabase.CursorFactory;

public class DBOpenHelper extends SQLiteOpenHelper {
  public DBOpenHelper(Context context,String name, CursorFactory factory,
            int version){
    super(context, name, factory, version);
  }
  @Override
  //            ,        ,     
  //Sqlite           ,   INTEGER      ,0 false,1 true
  public void onCreate(SQLiteDatabase db){
    //user table
    db.execSQL("create table if not exists user_tb(_id integer primary key autoincrement," +
        "userID text not null," +
        "pwd text not null)");
  }
  @Override//
  public void onUpgrade(SQLiteDatabase db,int oldVersion,int newVersion){
  }
}

2、로그인 인터페이스 입장
 
로그인 버튼을 눌렀을 때 데이터베이스에 가서 조회를 하고 계정이 존재하는지 판단한다(Query 조회 범례)
public void OnMyLoginClick(View v){
  //    /          ...
  //  DBOpenHelper (qianbao.db          )
  DBOpenHelper helper = new DBOpenHelper(this,"qianbao.db",null,1);
  SQLiteDatabase db = helper.getWritableDatabase();
  //          /           (user_tb   )
  Cursor c = db.query("user_tb",null,"userID=? and pwd=?",new String[]{  1  ,  2  },null,null,null);
  //        
  if(c!=null && c.getCount() >= 1){
    //                  /  
    /*String[] cols = c.getColumnNames();
    while(c.moveToNext()){
      for(String ColumnName:cols){
        Log.i("info",ColumnName+":"+c.getString(c.getColumnIndex(ColumnName)));
      }
    }*/
    c.close();
    db.close();
    this.finish();
  }
  //         
  else{
    Toast.makeText(this, "          !", Toast.LENGTH_SHORT).show();
  }
}

3. 계정이 존재하지 않으면 새로운 계정을 등록해야 한다(Insert 신규 사례)
import com.hyl.dao.DBOpenHelper;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
/**
 * register event
 * @param v
 */
public void OnMyRegistClick(View v){
  //                 ...
  //  DBOpenHelper
  DBOpenHelper helper = new DBOpenHelper(this,"qianbao.db",null,1);
  SQLiteDatabase db = helper.getWritableDatabase();
  //                   
  Cursor c = db.query("user_tb",null,"userID=?",new String[]{  1  },null,null,null);
  //
  if(c!=null && c.getCount() >= 1){
    Toast.makeText(this, "      ", Toast.LENGTH_SHORT).show();
    c.close();
  }
  //         ,      insert    
  else{
    //insert data
    ContentValues values= new ContentValues();
    values.put("userID","       ");
    values.put("pwd","       ");
    long rowid = db.insert("user_tb",null,values);
    Toast.makeText(this, "    ", Toast.LENGTH_SHORT).show();//    
    this.finish();
  }
  db.close();
}

4. 사용자가 비밀번호를 잊어버리면 비밀번호 리셋을 해야 한다(Update 수정 예)
private void confirmInfo() {
  //                 ...
 
  //  DBOpenHelper
  DBOpenHelper helper = new DBOpenHelper(this,"qianbao.db",null,1);
  SQLiteDatabase db = helper.getWritableDatabase();
  //          /           
  Cursor c = db.query("user_tb",null,"userID=?",new String[]{editPhone.getText().toString()},null,null,null);
  //        ,      ,          
  if(c!=null && c.getCount() >= 1){
    ContentValues cv = new ContentValues();
    cv.put("pwd", editPhone.getText().toString());//editPhone      
    String[] args = {String.valueOf(editPhone.getText().toString())};
    long rowid = db.update("user_tb", cv, "userID=?",args);
    c.close();
    db.close();
    Toast.makeText(this, "      !", Toast.LENGTH_SHORT).show();
    this.finish();
  }
  //
  else{
    new AlertDialog.Builder(this)
        .setTitle("  ")
        .setMessage("      ,          !")
        .setPositiveButton("  ", new DialogInterface.OnClickListener() {
          public void onClick(DialogInterface dialog, int whichButton) {
            setResult(RESULT_OK);
            Intent intent=new Intent(        .this,    .class);
                    .this.startActivity(intent);
          }
        })
        .setNegativeButton("  ", new DialogInterface.OnClickListener() {
          public void onClick(DialogInterface dialog, int whichButton) {
            return;
          }
        })
        .show();
  }
}

... 에서 벗어나다https://www.jb51.net/article/148293.htm
SQLite 데이터베이스에 대한 일반적인 작업:
SQL 구문은 다음과 같이 작성, 삭제, 증가, 삭제, 수정, 조회를 포함합니다.
테이블 작성:
?
1 create table if not exists ( 1 ( ), 2 ( ),...)
테이블을 삭제하려면 다음과 같이 하십시오.
?
1 drop table if exists
증가:
?
1
2
3 insert into ( 1, 2, 3 ...) values ( 1, 2, 3 ...);
  insert into select * from ;
삭제:
?
1 delete from where
변경:
?
1 update set 1= 1, 2= 2... where
검색:
?
1 select * from where
전재 대상:https://www.cnblogs.com/sengzhao666/p/11011215.html

좋은 웹페이지 즐겨찾기