1) 데이터 베이스 만들기 : database = openOrCreateDatabase( name, MODE_PRIVATE, null );
public void createDatabase(String name){
println( "createDatabase 호출 됨" );
try {
println( "database 이름을 입력하시오" );
database = openOrCreateDatabase( name, MODE_PRIVATE, null );
} catch (SQLException e){
println(" 에러 발생됨 "+ e.getMessage());
}
println( "database 생성함 " + name );
}
2) 테이블 만들고 그안에 컬럼 정보 넣기 String sql ="create table " 후에 한칸 띄우는것을 유의하세요.
public void createTable(String name){
println( "create Table 호출 됨" );
if (database != null){
String sql ="create table "
+ name +
"(_id integer PRIMARY KEY autoincrement,
name text,
age text)";
try {
database.execSQL( sql );
println( "table 생성됨" + name );
} catch (SQLException e){
println(" 에러 발생됨 "+ e.getMessage());
}
} else {
println( "database db를 생성 하시오" );
return ;
}
}
3) 데이터 넣기 : "insert into " 띄어쓰기 유의하세요. tableName 뒤에 나오는 "(name, age)" 이부분이 어떤 컬럼을 이용할것인지 넣는 부분.
public void insertInfo(String tableName, String name, String age){
if(database != null) {
String sql = "insert into " + tableName + "(name, age) " + "values(?,?)";
Object[] params = {name, age};
database.execSQL( sql, params );
println( "데이터 추가함."+ name +" : " + age );
} else {
println( "먼저 데이터베이스를 오픈하세요" );
}
}
4) 데이터 조회화기 :
public void executeQuery(String tableName){
println("executeQuery 호출 됨");
String sql = "select _id, name, age from " + tableName; //select 구문
Cursor cursor = database.rawQuery(sql, null);//cursor 객체 받기
println("레코드 개수" + cursor.getCount());
for(int i=0; i < cursor.getCount(); i++){
cursor.moveToNext();
int id = cursor.getInt(0);
String name = cursor.getString(1);
String age = cursor.getString(2);
println("레코드#" + i + "id : "+ id +" : " + name + " , " + age);
}
cursor.close(); //항상 닫아줘야 한다.
}
출처 : https://rain2002kr.tistory.com/29
'프로그래밍 > Android' 카테고리의 다른 글
[Android] Custom layout 만들기 (0) | 2023.03.15 |
---|---|
[Android] onBackPress() Deprecated (0) | 2023.03.09 |
[Jetpack Compose] Column, Row, Box (0) | 2023.02.21 |
[Android] Meterial 디자인 적용 (0) | 2023.02.21 |
[Android] LinearLayout, ConstraintLayout의 차이점 (0) | 2023.02.21 |
댓글