HTML5는 데이터를 임시로 저장하는 데 사용할 수 있는 웹 SQL 데이터베이스를 사용합니다. 웹 SQL 데이터베이스 API는 실제로 HTML5 사양의 일부가 아니지만 별도의 사양으로 API 세트를 사용하여 클라이언트 데이터베이스를 조작합니다. Chrome 및 Firefox와 같은 주류 브라우저는 웹 SQL 데이터베이스를 지원합니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, HTML5 버전, Dell G3 컴퓨터.
HTML5는 웹 SQL 데이터베이스를 사용합니다.
html 5 로컬 데이터베이스(웹 SQL 데이터베이스)
웹 SQL 데이터베이스 API는 실제로 HTML5 사양의 일부가 아니라 별도의 사양입니다. API 세트를 통해 클라이언트의 데이터베이스를 조작합니다. Safari, Chrome, Firefox, Opera와 같은 주류 브라우저는 이미 웹 SQL 데이터베이스를 지원합니다. HTML5의 웹 SQL 데이터베이스는 실제로 매우 매력적입니다. mysql 쿼리와 동일한 쿼리 문을 사용하여 로컬 데이터베이스를 작동할 수 있다는 사실을 알게 되면 이것이 매우 흥미로울 것입니다. 오늘은 HTML 5의 Web SQL Database API에 대해 알아 보겠습니다.
다음에서는 데이터베이스 생성 및 열기, 테이블 생성, 데이터 추가, 데이터 업데이트, 데이터 삭제, 테이블 삭제 방법을 하나씩 소개하겠습니다.
먼저 세 가지 핵심 메소드를 소개합니다
1. openDatabase: 이 메소드는 기존 데이터베이스를 사용하거나 새 데이터베이스를 생성하여 데이터베이스 객체를 생성합니다.
2. 트랜잭션: 이 방법을 사용하면 상황에 따라 트랜잭션 제출 또는 롤백을 제어할 수 있습니다.
3.executeSql: 이 메소드는 실제 SQL 쿼리를 실행하는 데 사용됩니다.
1단계: 연결 열기 및 데이터베이스 생성
var dataBase = openDatabase("student", "1.0", "学生表", 1024 * 1024, function () { });if (!dataBase) { alert("数据库创建失败!"); } else { alert("数据库创建成功!"); }
기존 데이터베이스를 여는 openDatabase 메소드를 설명하세요. 데이터베이스가 존재하지 않으면 데이터베이스를 생성할 수도 있습니다. 여러 매개변수의 의미는 다음과 같습니다.
1, 데이터베이스 이름.
2. 현재 버전은 1.0 이니 그냥 놔두시고 쓰시면 됩니다.
3. 데이터베이스 설명.
4. 데이터 크기를 설정합니다.
5, 콜백 함수(생략 가능).
처음 호출 시 데이터베이스를 생성한 후 연결을 설정하세요.
생성된 데이터베이스는 로컬에 존재하며, 경로는
C:UsersAdministratorAppDataLocalGoogleChromeUser DataDefaultdatabaseshttp_localhost_*입니다.
생성된 것은 sqllite 데이터베이스입니다. SQLiteSpy로 파일을 열고 내부 데이터를 볼 수 있습니다. SQLiteSpy는 친환경 소프트웨어입니다. Baidu 또는 공식 SQLiteSpy 다운로드 주소: SQLiteSpy에서 다운로드할 수 있습니다.
2단계: 데이터 테이블 만들기
this.createTable=function() { dataBase.transaction( function(tx) { tx.executeSql("create table if not exists stu (id REAL UNIQUE, name TEXT)", [], function(tx,result){ alert('创建stu表成功'); }, function(tx, error){ alert('创建stu表失败:' + error.message); }); }); }
executeSql 함수에는 4개의 매개변수가 있으며 그 의미는 다음과 같습니다.
1) 쿼리 문자열을 나타내며 사용되는 SQL 언어는 SQLite 3.6.19입니다. (필수)
2) 쿼리의 물음표 위치에 삽입되는 문자열 데이터입니다. (선택사항)
3) 성공 시 콜백 함수가 실행됩니다. 두 개의 매개변수인 tx와 실행 결과를 반환합니다. (선택)
4) 실패 시 실행될 콜백 함수입니다. 두 개의 매개변수(tx 및 실패 오류 메시지)를 반환합니다. (선택)
3단계: 추가, 삭제, 수정 확인
1) 데이터 추가:
this.insert = function () { dataBase.transaction(function (tx) { tx.executeSql("insert into stu (id, name) values(?, ?)", [id, '徐明祥'], function () { alert('添加数据成功'); }, function (tx, error) { alert('添加数据失败: ' + error.message); } ); });
2) 데이터 쿼리
this.query = function () { dataBase.transaction(function (tx) { tx.executeSql("select * from stu", [], function (tx, result) { //执行成功的回调函数//在这里对result 做你想要做的事情吧...........}, function (tx, error) { alert('查询失败: ' + error.message); } ); }); }
특별 알림
위 코드에서 성공적으로 실행된 콜백 함수에는 매개변수 결과가 있습니다. .
결과: 쿼리된 데이터 세트입니다. 해당 데이터 유형은 C#의 DataTable과 마찬가지로 SQLResultSet입니다.
SQLResultSet은 다음과 같이 정의됩니다.
interface SQLResultSet {readonly attribute long insertId;readonly attribute long rowsAffected;readonly attribute SQLResultSetRowList rows; };
가장 중요한 속성 - SQLResultSetRowList 유형의 행은 데이터 세트의 "행"입니다.
rows에는 길이와 항목이라는 두 가지 속성이 있습니다.
그러므로 쿼리 결과의 첫 번째 행( result.rows.item(0).name )에서 name이라는 값을 가져옵니다.
3) 데이터 업데이트
this.update = function (id, name) { dataBase.transaction(function (tx) { tx.executeSql("update stu set name = ? where id= ?", [name, id], function (tx, result) { }, function (tx, error) { alert('更新失败: ' + error.message); }); }); }
4) 데이터 삭제
this.del = function (id) { dataBase.transaction(function (tx) { tx.executeSql("delete from stu where id= ?", [id], function (tx, result) { }, function (tx, error) { alert('删除失败: ' + error.message); }); }); }
5) 데이터 테이블 삭제
this.dropTable = function () { dataBase.transaction(function (tx) { tx.executeSql('drop table stu'); }); }
더 많은 프로그래밍 관련 지식을 보려면 프로그래밍 비디오를 방문하세요! !
위 내용은 html5는 어떤 데이터베이스를 사용합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!