IndexedDB는 파일/블로브를 포함하여 구조화 된 데이터의 클라이언트 측 스토리지를위한 저수준 API입니다. 클라이언트 측 데이터베이스 스토리지에 HTML5에서 indexeddb를 사용하려면 다음을 수행 할 수 있습니다.
데이터베이스 열기 :
indexeddb 데이터베이스에 대한 연결을 열어 시작하십시오. indexedDB.open()
메소드를 사용하여 수행 할 수 있습니다. 데이터베이스 이름과 선택적으로 버전 번호를 지정합니다. onupgradeneeded
이벤트 핸들러는 데이터베이스가 생성되거나 버전이 변경 될 때 데이터베이스 스키마를 설정하는 데 사용됩니다.
<code class="javascript">const request = indexedDB.open("MyDatabase", 1); request.onupgradeneeded = function(event) { const db = event.target.result; // Create an objectStore for this database const objectStore = db.createObjectStore("items", { keyPath: "id" }); // Create an index to search items by name objectStore.createIndex("name", "name", { unique: false }); };</code>
데이터 추가 :
indexeddb 데이터베이스에 데이터를 추가하려면 먼저 트랜잭션을 열고 객체 저장소에서 add()
또는 put()
메소드를 사용하십시오.
<code class="javascript">request.onsuccess = function(event) { const db = event.target.result; const transaction = db.transaction(["items"], "readwrite"); const objectStore = transaction.objectStore("items"); const request = objectStore.add({ id: 1, name: "item1", price: 10 }); request.onsuccess = function(event) { console.log("Item added to the database"); }; };</code>
데이터 검색 :
데이터를 검색하려면 키를 알고 있으면 get()
메소드를 사용할 수 있습니다. 보다 복잡한 쿼리의 경우 커서 또는 인덱스를 사용할 수 있습니다.
<code class="javascript">request.onsuccess = function(event) { const db = event.target.result; const transaction = db.transaction(["items"], "readonly"); const objectStore = transaction.objectStore("items"); const request = objectStore.get(1); request.onsuccess = function(event) { console.log("Item retrieved: ", event.target.result); }; };</code>
데이터 업데이트 및 삭제 :
Key를 기반으로 데이터를 삽입하거나 업데이트하는 put()
메소드를 사용하여 데이터 업데이트를 수행 할 수 있습니다. 데이터를 삭제하려면 delete()
메소드를 사용하십시오.
<code class="javascript">request.onsuccess = function(event) { const db = event.target.result; const transaction = db.transaction(["items"], "readwrite"); const objectStore = transaction.objectStore("items"); const requestUpdate = objectStore.put({ id: 1, name: "item1 updated", price: 15 }); const requestDelete = objectStore.delete(2); };</code>
오류 처리 :
onerror
이벤트를 사용하여 항상 오류를 처리하여 데이터베이스 작업 중에 발생하는 모든 문제를 포착하십시오.
<code class="javascript">request.onerror = function(event) { console.log("Database error: " event.target.errorCode); };</code>
IndexedDB는 클라이언트 측에 데이터를 저장하는 데 몇 가지 이점을 제공합니다.
INDEXEDDB의 데이터 지속성 및 보안 보장에는 몇 가지 주요 관행이 포함됩니다.
데이터 지속성 :
데이터 보안 :
INDEXEDDB를 구현할 때는 성능 문제 또는 응용 프로그램 실패로 이어질 수있는 일반적인 함정을 피하는 것이 중요합니다.
onerror
이벤트 처리기를 사용하여 오류를 기록하고 로그인하십시오.idb
와 같은 폴리 필 또는 라이브러리를 사용하여 브라우저 차이를 추상화하는 것을 고려하십시오.위 내용은 HTML5의 클라이언트 측 데이터베이스 스토리지에 IndexedDB를 어떻게 사용합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!