본문 바로가기
HTML5_CSS_JAVASCRIPT

HTML5 SQL 실행 및 처리

by 복제비 2022. 6. 13.

HTML5  SQL 실행 및 처리

 

SQL 질의어

SQL(Structured Query Language)은 데이터베이스를 정의하고 조작하기 위한 질의어(Query Language)를 의미합니다.

SQL 질의어는 초기에는 관계형 DBMS에서만 사용되었으나 지금은 특정한 데이터베이스 시스템에 한정되지 않고 다른 데이터베이스에서도 널리 사용되고 있습니다.

CREATE 문

CREATE 문은 테이블생성할 때 사용하는 구문입니다.

 

형식
create  table  테이블이름 ( 속성이름   자료형[not null], ... [primary  key (속성이름)] )
예제
create  table  member (ID  char(8)  not null,  name  char(10) not null, primary key (ID) )
create  table  movie ( name,  actor )

SELECT 문

SELECT 문은 테이블에서 레코드검색할 때 사용하는 구문입니다.

 

형식
select  필드이름  from  테이블이름 [where  조건문] [order  by  [ asc | desc ] ]
예제
select  *  from  tablemember
select  name  from  tablemember  where  num = '4'
select  name  from  tablemember  where  age = '28'  order  by  asc

INSERT 문

INSERT 문은 테이블에 레코드삽입할 때 사용하는 구문입니다.

 

형식
insert  into  테이블이름 (필드이름)   values ('값')
예제
insert  into  tablemember (id, passwd, name)  value ('apple',  '1234', '홍길동')
insert  into  tablemember (age, phone)  value ('28', '010-1234-5678')

UPDATE 문

UPDATE 문은 테이블에서 레코드를 수정할 때 사용하는 구문입니다.

 

형식
update   테이블이름   set   필드이름 =  '값'  [ where  조건문 ]
예제
update  tablemember set  age = '19' 
update  tablemember set  id = 'banana',  name = '김철수'  where  num ='3' 

DELETE 문

DELETE 문은 테이블에서 레코드를 삭제할 때 사용하는 구문입니다.

 

형식
delete  from   테이블이름   [ where   조건문 ]
예제
delete  from  tablemember 
delete  from  tablemember   where  id ='apple' 

 

SQL 실행 및 처리

executeSql( ) 메서드

executeSql() 메서드 SQL 문사용명령어를 처리하기 위해서 사용하는 메서드입니다.

 

형식
트랜잭션 객체.executeSql ( SQL문,  치환값,  function(tx, rs) {  SQL 실행에 성공했을 때의 처리  },
                                                                                    function(error) {  SQL 실행에 실패했을 때의 처리  } );
예제
<script type="text/javascript">
  window.onload = function()
  {
      var db = openDatabase("movie", "1.0", "movie  database", 1024*1024);
      db.transaction(
      function(tx)
      {
          tx.executeSql("create  table  movie(name,  actor)");  // 테이블 생성함
         
// 데이터를 삽입함

          tx.executeSql("insert  into  movie(name, actor) values(?, ?)", ["오징어게임", "이정재"]);
          tx.executeSql("insert  into  movie(name, actor) values(?, ?)", ["미나리", "윤여정"]);
          tx.executeSql("insert  into  movie(name, actor) values(?, ?)", ["기생충", "송강호"]);            
      });
  };
  </script>

executeSql() 메서드를 사용하여 데이터베이스에 어떠한 작업을 처리하였을 경우 세 번째 인수로 지정한 콜백 함수가 호출됩니다.
콜백 함수에서 두 번째 인수는 실행 결과인 SQLResultSet 형의 객체를 반환합니다.

관련 속성

속성 설명
insertId INSERT 문을 실행하여 생성된 ID
rowAffected SQL 실행에 의해 처리된 레코드의 수
rows SELECT 문을 실행한 결과
length 속성을 사용하여 레코드 수를 알 수 있으며, item(index) 메서드를 사용하여 지정한 index 의 레코드를 얻을 수 있음
예제
function viewData()
{

    db.transaction(
        function(tx)
        { // 테이블에 저장되어 있는 모든 데이터를 검색함
           tx.executeSql("select * from movie",[],  
                function(tx, rs)

               {   // row 속성의 length 속성을 사용하여 검색 결과의 갯수대로 처리함          
                   for(var i = 0; i < rs.rows.length; i++)
                  {   // 지정한 인덱스에 해당하는 객체를 얻음
                      var row = rs.rows.item(i);  
              // innerHTML 속성에 값을 지정하여 테이블 형식으로 출력함

                     document.getElementById("table").innerHTML +=  "<tr><td>" + row["name"] + "</td><td>" + row["actor"] +
                                                                                                                              "</td></tr>";

                   }                                              
               });           
      });
  }
......

<input  type="button"  onclick="viewData()" value="조회"><br>
<table  id="table"></table>

 

SQL 실행 및 처리 실습 프로그램

 

'HTML5_CSS_JAVASCRIPT' 카테고리의 다른 글

공유 워커의 사용  (0) 2022.06.15
웹 워커  (0) 2022.06.14
웹 데이터베이스  (0) 2022.06.12
세션 스토리지  (0) 2022.06.11
웹 스토리지  (0) 2022.06.10

댓글