[안드로이드] - SQLite select문 ListView로 출력하기
○ SQLite select문 ListView로 출력하기 |
public class SelectActivity extends AppCompatActivity { String dbname = "myDB"; String tablename = "customer"; String sql; SQLiteDatabase db; // db를 다루기 위한 SQLiteDatabase 객체 생성 Cursor resultset; // select 문 출력위해 사용하는 Cursor 형태 객체 생성 ListView listView; // ListView 객체 생성 String[] result; // ArrayAdapter에 넣을 배열 생성 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_select); db = openOrCreateDatabase(dbname, MODE_PRIVATE, null); // 있으면 열고 없으면 DB를 생성 listView = (ListView)findViewById(R.id.listView); } public void selectButtonClick(View v){ // 항상 DB문을 쓸때는 예외처리(try-catch)를 해야한다 try { sql = "select * from "+ tablename; resultset = db.rawQuery(sql, null); // select 사용시 사용(sql문, where조건 줬을 때 넣는 값) int count = resultset.getCount(); // db에 저장된 행 개수를 읽어온다 result = new String[count]; // 저장된 행 개수만큼의 배열을 생성 for (int i = 0; i < count; i++) { resultset.moveToNext(); // 첫번째에서 다음 레코드가 없을때까지 읽음 String str_name = resultset.getString(0); // 첫번째 속성 String str_phone = resultset.getString(1); // 두번째 속성 String str_email = resultset.getString(2); // 세번째 속성 result[i] = str_name + " " + str_phone + " " + str_email; // 각각의 속성값들을 해당 배열의 i번째에 저장 } System.out.println("select ok"); ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, result); // ArrayAdapter(this, 출력모양, 배열) listView.setAdapter(adapter); // listView 객체에 Adapter를 붙인다 } catch (Exception e) { System.out.println("select Error : " + e); } } } |
'안드로이드' 카테고리의 다른 글
[안드로이드] - Calendar 이용한 년월일 날짜 출력 (0) | 2017.06.14 |
---|---|
[안드로이드] - SQLiteOpenHelper 를 이용한 DB 처리 (0) | 2017.05.22 |
[안드로이드] - SQLiteDatabase 를 이용한 DB 처리 (0) | 2017.05.19 |
[안드로이드] - setOnItemClickListener 이용한 ListView 이벤트 처리 (0) | 2017.05.08 |
[안드로이드] - setOnItemSelectedListener 이용한 Spinner 이벤트 처리 (0) | 2017.05.08 |