이클립스로 sqlite DB만들려고 하는데 여러 개발 책 및 구글링해도 잘 되지 않네요
src.폴더에 DBManager.java 만들었고요. 코드는 아래처럼 작성했는데,
DDMS > data > data > 클래스명 > database 에서 DB 만들어졌나 확인하려고 하는데 database 폴더 자체가 없어요
만들려고 하는 건 DB정보를 미리 만들어 놓고(여러 개) 앱에서 목록으로 해당 DB 정보를 불러오려고 하거든요.
근데 가장 처음인 DB생성부터 계속 고생하고 있어서요. 어디가 문제인지 확인 부탁드립니다. !
(이제 막 개발 배우는 사람이어서 자세하게 설명 부탁드려요ㅠ)
DBManager.java 코드
package com.example.zlaproject;
import android.content.ContentValues;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class DBManager extends SQLiteOpenHelper {
//전역변수
SQLiteDatabase db;
SQLiteOpenHelper helper;
//데이터베이스 생성
public DBManager(Context context) {
super(context, "myDB", null, 1); //myDB: 데이터베이스 이름
}
//테이블 생성
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table bbb (_id integer primary key autoincrement, "
+ "brand text, type text,"
+ "year int, name text, color text, size text, price int");");
}
//존재하는 DB버전이 다른 경우 실행
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
//데이터베이스 테이블에 데이터 삽입
public void insert(String name, int brand) {
db = helper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("brand","브랜드");
values.put("type","타입");
values.put("year",2015);
values.put("name","이름");
values.put("color","검정");
values.put("size","500-600");
values.put("price",500000);
db.insert("bbb", null, values);
}
}
MainActivity.java 코드
package com.example.zlaproject;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
+ 추가 질문 드리면, DB에 레코드를 여러 개 추가하려면 insert문에서
ContentValues values = new ContentValues();
~~~~
values.put("price",500000);
db.insert("bbb", null, values);
까지 코드 계속 반복해서 넣으면 되는 건가요? values값은 values2, values3으로 변경하고요.