안드로이드 데이터베이스 예제

 Senast ändrad 2 augusti, 2019 kl 02:53
aug 022019
 

패키지 com.tutlane.sqliteexample; android.content.ContentValues 가져오기; android.content.Context 가져오기; 가져 오기 android.database.Cursor; 가져 오기 android.database.sqlite.SQLite데이터베이스; 가져 오기 android.database.sqlite.SQLiteOpenHelper; 가져오기 자바.util.ArrayList; 가져오기 자바.util.HashMap; /** * 06-01-2018에 tutlane에 의해 만들어졌습니다. */ 공용 클래스 DbHandler 확장 SQLiteOpenHelper { 개인 정적 최종 INT DB_VERSION = 1; 개인 정적 최종 문자열 DB_NAME = ”usersdb”; 개인 정적 최종 문자열 TABLE_Users = ”사용자 세부 정보”; 개인 정적 최종 문자열 KEY_ID = ”ID”; 개인 정적 정적 정적 정적 최종 문자열 KEY_NAME = ”name”; 개인 정적 최종 문자열 KEY_LOC = ”위치”; 개인 정적 최종 문자열 KEY_DESG = ”지정”; public DbHandler (컨텍스트 컨텍스트){ 슈퍼 (컨텍스트, DB_NAME, null, DB_VERSION); } @Override 공용 void onCreate (SQLiteDatabase db){ 문자열 CREATE_TABLE = ”테이블 만들기 ” + TABLE_Users + ”(””+KEY_ID + ”정수 기본 키 자동 입력” + + KEY_NAME + ”TEXT” + + + KEY_LOC + ”텍스트”, + KEY_DESG + ”텍스트”+ ”)”; db.execSQL(CREATE_TABLE); } @Override 공용 void onUpgrade (SQLiteDatabase db, int oldVersion, int newVersion){ // 이전 테이블을 드롭 하는 경우 db.execSQL (”드롭 테이블 존재 하는 경우 ” + TABLE_Users); 에 테이블을 다시 만들기만들기 만들기 (db); } // **** CRUD (만들기, 읽기, 업데이트, 삭제) 작업 ***** // // 새 사용자 세부 사항 추가 void 사용자 세부 사항 (문자열 이름, 문자열 위치, 문자열 지정){ //쓰기 모드에서 데이터 리포지토리 가져오기 SQLiteDatabase db = this.getWritableDatabase (); 열 이름이 키인 값의 새 맵을 만듭니다. cValues.put(KEY_NAME, 이름); cValues.put(KEY_LOC, 위치); cValues.put (KEY_DESG, 지정); 새 행을 삽입하여 새 행 long newRowId = db.insert(TABLE_Users, null, cValues)의 기본 키 값을 반환합니다. db.close(); } // 사용자 세부 정보 가져오기 공개 ArrayList<HashMap> GetUsers() { SQLiteDatabase db = this.getWritableDatabase(); ArrayList<HashMap> 사용자 목록 = 새 ArrayList<<<(); 문자열 쿼리 = "선택 이름, 위치, 에서 지정 "+ TABLE_Users; 커서 커서 = db.rawQuery(쿼리, null); 동안 (cursor.moveToNext(){HashMap 사용자 = 새로운 HashMap<<);; user.put(”이름”), cursor.getColumnIndex(cursor.getColumnIndex(KEY_NAME))); user.put(”지정”,cursor.getColumnIndex(KEY_DESG)) 위치”, 커서.getString(커서.getColumnIndex(KEY_LOC))); userList.add(사용자); } 사용자 목록을 반환; } // 사용 가능한 공용 배열리스트<HashMap> GetUserById(int userid){ SQLiteDatabase db = this.getWritableDatabase()를 기반으로 사용자 세부 정보 가져오기; ArrayList<HashMap> 사용자 목록 = 새 ArrayList<<<(); 문자열 쿼리 = "선택 이름, 위치, 에서 지정 "+ TABLE_Users; 커서 커서 = db.query(TABLE_Users, 새 문자열[]{KEY_NAME, KEY_LOC, KEY_DESG}, KEY_ID+ "=?",새 문자열[]{String.valueOf(userid)},null, null, null, null; null); 경우 (cursor.moveToNext(){해시맵 사용자 = 새로운 HashMap<);; user.put(”이름”), cursor.getString(cursor.getColumnIndex(KEY_NAME))); user.put(”지정”,cursor.getColumnIndex(KEY_DESG)) ”,,cursor.getString (cursor.getColumnIndex (KEY_LOC)))); userList.add(사용자); } 사용자 목록을 반환; } // 삭제 사용자 세부 사항 공개 무효 삭제User (int userid){ SQLiteDatabase db = this.getWritableDatabase(); db.delete (TABLE_Users, KEY_ID+” = ”?, 새 문자열[]{String.valueOf(userid)}); db.close(}); } // 업데이트 사용자 세부 정보 공개 정보 공개 정보 문자열 위치, 문자열 지정, int id){ SQLiteDatabase db = this.getWritableDatabase(); 콘텐츠값 cVals = 새 콘텐츠 값(); cVals.put (KEY_LOC, 위치); cVals.put (KEY_DESG, 지정); int 개수 = db.update(TABLE_Users, cVals, KEY_ID+” = ”?”, 새 문자열[]{String.valueOf(id)}); 반환 횟수; } } 데이터베이스에 데이터가 포함되어 있지 않은 경우 false를 반환하는 업데이트 데이터에 대한 조건을 선언하는 방법이 있습니까?( 예: 찾아야 하는 특정 전자 메일)이 데이터베이스에 없는 경우? Android에서는 영구 데이터를 저장하는 여러 가지 방법이 있습니다.

Tyvärr, det är nu stängt för kommentarer här.

© 2011 Radiostyrd Bilsport Suffusion theme by Sayontan Sinha