자바스크립트: Database 객체 사용하기 [2]

관리자 0 140 04.01 21:22

자바 스크립트 – Database 객체 사용하기 [2] 

 

1)     생성한 레이블들의 클릭 이벤트에 스크립트 함수를 지정한다.

  execute 레이블

800aa72a18fb3c7d1330706959cdd7ab_1585744333_4311.png
 

 

  execNonQuery 레이블

800aa72a18fb3c7d1330706959cdd7ab_1585744347_6405.png
 

 

  execQuery 레이블

800aa72a18fb3c7d1330706959cdd7ab_1585744358_9582.png
 

 

2)     F5나 실행 버튼을 눌러 뷰어를 실행한다.

800aa72a18fb3c7d1330706959cdd7ab_1585743679_2919.png
 


3)     각 레이블을 클릭함으로써 Database 객체의 함수를 사용할 수 있다.

  execute 레이블

800aa72a18fb3c7d1330706959cdd7ab_1585743689_7219.png 

리스트뷰가 SELECT문의 결과로 채워진다.


 

  execNonQuery 레이블

800aa72a18fb3c7d1330706959cdd7ab_1585743716_0922.png
 

Insert 문이 실행된다.

 

  execQuery 레이블

800aa72a18fb3c7d1330706959cdd7ab_1585743729_2522.png
 

리스트뷰가 SELECT문의 결과로 채워진다.


1.     스크립트 코드 해석

1)   ExecuteFunc 메소드

function ExecuteFunc()

{

$XD("sqlite_1").execute("query_1", null, OnSuccess, OnFail);

}

 

sqlite_1 데이터소스의 query_1 쿼리를 실행한다. 쿼리 성공 시 쿼리 결과와 함께 OnSuccess 함수를 호출한다. 쿼리 실패 시 OnFail 함수를 호출한다.

  페이지 콘솔 창 결과: -

 

2)   ExecNonQuery 메소드

function ExecNonQuery()

{

$XD("sqlite_1").execNonQuery(

"INSERT INTO sample_table (name, content) VALUES ('ABC', '123');",

 null, OnSuccess, OnFail);

}

      
            sqlite_1 데이터소스에서 입력한 쿼리문을 실행한다.



  페이지 콘솔 창 결과: -


 

3)   ExecQuery 메소드

function ExecQuery()

{

$XD("sqlite_1").execQuery(

"SELECT id, ctime, name, content FROM sample_table;",

null, OnSuccess, OnFail);

}

 

    sqlite_1 데이터소스의 query_1 쿼리를 실행한다. 쿼리 성공 시 쿼리 결과와 함께 OnSuccess 함수를 호출한다. 쿼리 실패 시 OnFail 함수를 호출한다.

  페이지 콘솔 창 결과: -

 

4)   OnSuccess 메소드

function OnSuccess(data)

{

$XV("listview_1").items.clear();

 

$XV("listview_1").items.addAll(data);

}

 

  listview_1 리스트뷰의 요소를 초기화한 후 data 매개변수로 다시 채워넣는다.

   Database 객체의 executeexeQuerySELECT문을 실행했다면 data 매개변수에 DataResult 객체가 담긴다. DataResult 객체로 리스트뷰나 차트 같은 뷰 객체를 갱신할 수 있다.

 

  페이지 콘솔 창 결과: -

  페이지 1 결과: listview_1 객체 갱신됨


 

5)   OnFail 메소드

function OnFail()

{

console.log("Failed");

}


  페이지 스크립트 콘솔에 메시지를 출력한다.

  페이지 콘솔 창 결과: “Failed”

포럼사이트에 기재된 모든 저작물은 ㈜자이솜의 권리입니다.
포럼사이트 내용물에 대한 정보의 무단유포, 배포, 복사 또는 사용은 엄격히 금지됩니다.
㈜자이솜의 허가없이 포럼사이트의 내용을 복사 및 사용하는것은 고소 또는 저작권 문제가 발생할 경우 처벌 및 벌금에 대한 모든것을 인정한다는 것을 의미합니다.
All rights reserved by XISOM Inc.
Any unauthorized dissemination, distribution, copying or use of the information contain in this site is strictly prohibited.
Copying and using the contents of the forum site without the permission of XISOM Inc. means to acknowledge all penalties and fines in case of complaint or copyright problem.

Comments

Training