2012-12-26 2 views
-1

는이 같은 소스 코드가 있습니다. else dbkonek 새로 만들기 DatabaseConnector, 어떻게 이것을 얻을 수 있습니까? 내가이 같은 소스 만들 때 때문에 : 안드로이드 문 SQLite는 커서

if (proses == 3) { 
    HistoryConnector dbkonek = new HistoryConnector(this); 
    dbkonek.open(); 
} else { 
    DatabaseConnector dbkonek = new DatabaseConnector(this); 
    dbkonek.open(); 
} 
    //CURSOR air 
    cursorSumberAir = dbkonek.getOneDataSumberAir(rowId); 
    cursorKegunaanAir = dbkonek.getOneDataKegunaanAir(rowId); 
    cursorSifatAir = dbkonek.getOneDataSifatAir(rowId); 
    cursorPerlakuanAir = dbkonek.getOneDataPerlakuanAir(rowId); 
    cursorPenyimpananAir = dbkonek.getOneDataPenyimpananAir(rowId); 
    cursorSanitasi = dbkonek.getOneDataSanitasi(rowId); 
    cursorSumberAir.moveToFirst(); 
    cursorKegunaanAir.moveToFirst(); 
    cursorSifatAir.moveToFirst(); 
    cursorPerlakuanAir.moveToFirst(); 
    cursorPenyimpananAir.moveToFirst(); 
    cursorSanitasi.moveToFirst(); 

편집을, 같은 하나 커넥터 :

public class DatabaseConnector { 

    private static final String DB_NAME = "DataAssessment.db"; 
    private SQLiteDatabase database; 
    private DatabaseOpenHelper dbOpenHelper; 

    public DatabaseConnector(Context context) { 
     dbOpenHelper = new DatabaseOpenHelper(context, DB_NAME, null, 1); 
    } 
} 

소스 코드 위, dbkonek 커서에서 감지 할 수 없습니다. 어떻게이 간단한 소스 코드가 될 수 있습니다.

+1

너무 많은 (필요 이상의) 코드, 외국어, 전체 정말 불분명 질문을 ... 그것은 당신이 할 필요가 무엇입니까? –

+0

내가 dbkonek 참조를 새로운 클래스 HistoryConnect 또는 DatabaseConnector, 먼저 dbkonek 선언 할 수있는 변수 dbkonek, 선언해야합니다. before 진술. – pwcahyo

+0

'HistoryConnector'와'DatabaseConnector'는 _base 클래스 _ 또는 _interface_를 공유합니까? –

답변

1

클래스 계층 구조가 사전에 대한 감사는 그 HistoryConnectorDatabaseConnector어떤 유형에 사용할 수있는 작업의 집합을 정의 아마도 Connector라는 공통 기본 클래스 또는 인터페이스을 설계한다 커넥터. 그럼 당신은 간단 할 것 :

Connector dbkonek; 
if(proses == 3){ 
    dbkonek = new HistoryConnector(this); 
}else{ 
    dbkonek = new DatabaseConnector(this); 
} 
dbkonek.open(); 
...