2016-10-24 2 views
0

나는 암호 관리자 응용 프로그램에서 일하고 있습니다. 하나의 테이블로 데이터베이스를 만들었습니다. 사용자 정의보기 및 sqlite 데이터베이스 작업 - 안드로이드

table_name

: entry

fileds : id, title, category, username, password, website, comment.

주 활동에는 위의 필드에 대한보기가 포함되어 있습니다. 하지만 지금은 "add filed"이라는 버튼을 추가하여 사용자가 다른 사용자 정의 항목처럼 새로운보기를 추가하거나 edittext를 다른 사용자 정의 항목에 추가 할 수 있습니다.

그러나 문제는 ...

어떻게 데이터베이스에 그 사용자 정의 항목을 저장할 수 있습니까? 왜냐하면 사용자가 첫 번째 암호에 대해 하나의 사용자 지정 항목을 추가하려고 할 가능성이 있기 때문입니다. 및 두 번째 암호에 대한 두 개의 사용자 지정 항목 그래서 어떻게 추가 사용자 지정 레코드를 데이터베이스로 관리 할 수 ​​있습니까?

plz 도움말 ..

+0

데이터베이스에 문제가있어 그 sqlite에서 여분의 필드를 관리하는 방법이 있습니까? – dipali

+0

예, 정확하게 추가 필드의 diffs 번호를 관리하는 방법을 모르겠다 –

답변

0

테이블에 새 필드를 추가하려면 테이블 변경 쿼리를 사용하십시오. 예를 들어. ,

if (!isColumnExistInTableOrNot("entry", "username2")) { 
      db.execSQL("ALTER TABLE entry ADD COLUMN username2 varchar"); 

     } 

isColumnExistInTableOrNot는()이다.

public static boolean isColumnExistInTableOrNot(SQLiteDatabase db,String tableName, 
                String ColumnName) { 
     String Query = "select " + ColumnName + " from " + tableName; 
     try { 
      Cursor c = db.rawQuery(Query, null); 
      if (c != null) { 
       return true; 
      } 
     } catch (SQLiteException e) { 
      return false; 
     } 
     return false; 
    } 
+0

나는 한 번만 더 질문을 주겠다.하지만 한 테이블의 레코드는 –

+0

에 2 개의 추가 필드와 두 번째 containd가 포함되어 있습니다. 4. 그 다음 작동할까요? (같은 테이블에서) 다른 기록에 영향을 미칠 것입니까? –

+0

문제가 없습니다. 하나 이상의 열을 추가하고 이미 존재하는 레코드를 업데이트하십시오. 기존 레코드의 .set new 열 필드 값. – dipali

관련 문제