sqlite


sqlite 은 HSP 에서 기본으로 제공하는 API로 별도의 설정 없이 사용 가능하며 Android 내부에서 제공하는 SQLite 을 제어할 수 있는 기능을 제공한다. 


open

open 은 디비 파일을 연다. 

options

필드설명M/O
dbName생성 할 DB 명M
   

Example

val dbName = "testDbName";

DAPSQLite.open(this@MainActivity, dbName, null, {
   // TODO
}) {
   // TODO
}
final String dbName = "testDbName";

DAPSQLite.open(MainActivity.this, dbName, null, result -> {
       // TODO
   }, e -> {
       // TODO
   });

close

close는 open 한 디비를 닫는다. 

options

필드설명M/O
dbName생성 할 DB 명M
   

Example

val dbName = "testDbName";

DAPSQLite.close(this@MainActivity, dbName, {
   // TODO
}) {
   // TODO
}
final String dbName = "testDbName";

DAPSQLite.close(MainActivity.this, result -> {
       // TODO
   }, e -> {
       // TODO
   });

executePragmaStatement

executePragmaStatement 는 open 되어 있는 디비에 Query 를 전달하여 실행 한다. 

options

필드설명M/O
dbName생성 할 DB 명M
query실행 할 Query 문M
   

Example

val dbName = "testDbName";
val sql = "CREATE TABLE test (_id INTEGER, text TEXT NOT NULL)"

DAPSQLite.executePragmaStatement(this@MainActivity, dbName, sql, {
   // TODO
}) {
   // TODO
}
final String dbName = "testDbName";
String sql = "CREATE TABLE test (_id INTEGER, text TEXT NOT NULL)";

DAPSQLite.executePragmaStatement(MainActivity.this, dbName, sql, result -> {
       // TODO
   }, e -> {
       // TODO
   });

executeSqlBatch

executeSqlBatch 는 Query Array 를 전달하여 실행 한다. 

options

필드설명M/O
dbName생성 할 DB 명M
queries실행 할 Query 문의 배열M
   

Example

val jarr = JSONArray().apply {
    put("CREATE TABLE test2 (_id INTEGER, text TEXT NOT NULL)")
    put("INSERT INTO test2 ('_id', 'text') VALUES (1, 'TEST 1')")
    put("INSERT INTO test2 ('_id', 'text') VALUES (2, 'TEST 2')")
    put("INSERT INTO test2 ('_id', 'text') VALUES (3, 'TEST 3')")
    put("INSERT INTO test2 ('_id', 'text') VALUES (4, 'TEST 4')")
}

DAPSQLite.executeSqlBatch(this@MainActivity, dbName, jarr, {
   // TODO
}) {
   // TODO
}
JSONArray jarr = new JSONArray();
jarr.put("CREATE TABLE test2 (_id INTEGER, text TEXT NOT NULL)");
jarr.put("INSERT INTO test2 ('_id', 'text') VALUES (1, 'TEST 1')");
jarr.put("INSERT INTO test2 ('_id', 'text') VALUES (2, 'TEST 2')");
jarr.put("INSERT INTO test2 ('_id', 'text') VALUES (3, 'TEST 3')");
jarr.put("INSERT INTO test2 ('_id', 'text') VALUES (4, 'TEST 4')");

DAPSQLite.executeSqlBatch(MainActivity.this, dbName, jarr, result -> {
       // TODO
   }, e -> {
       // TODO
   });

Error Code

CodeCauseComment
E10800파라메터 값이 잘못되어 있을 경우 
E10801전달된 액션 값이 알 수 없는 액션일 경우 
E10802DB명이 잘못되어 있을 경우 
E10803실행할 Query문이 잘못되어 있을 경우 
E10850실행 중 오류가 발생 되었을 경우 
E10851실행 중 생성 된 DB가 존재하지 않는 경우 
E10852DB Open 시 오류가 발생한 경우 
E10853Query 실행 중 오류가 발생한 경우 
E10899알 수 없는 오류가 발생 되었을 경우