티스토리 뷰
IndexedDB
데이터 읽어오기
var transaction = db.transaction(["test"], "readonly");
var objectStore = transaction.objectStore("test");
//x is some value
var ob = objectStore.get(x);
ob.onsuccess = function(e) {
}
db.transaction(["test"], "readonly").objectStore("test").get(X).onsuccess = function(e) {}
더 많은 값으로 자세하기 읽어오기
var transaction = db.transaction(["test"], "readonly");
var objectStore = transaction.objectStore("test");
var cursor = objectStore.openCursor();
cursor.onsuccess = function(e) {
var res = e.target.result;
if(res) {
console.log("Key", res.key);
console.dir("Data", res.value);
res.continue();
}
}
function getPeople(e) {
var s = "";
db.transaction(["people"], "readonly").objectStore("people").openCursor().onsuccess = function(e) {
var cursor = e.target.result;
if(cursor) {
s += "<h2>Key "+cursor.key+"</h2><p>";
for(var field in cursor.value) {
s+= field+"="+cursor.value[field]+"<br/>";
}
s+="</p>";
cursor.continue();
}
document.querySelector("#status2").innerHTML = s;
}
}
var transaction = db.transaction(["people"],"readonly");
var store = transaction.objectStore("people");
var index = store.index("name");
//name is some value
var request = index.get(name);
데이터의 추가!
- add 메서드 사용
var person = {
name:name,
email:email,
created:new Date()
}
//Perform the add
var request = store.add(person);
데이터의 업데이트
- Put 메서드 사용 ( 정의된 속소 ID 추가 )
var person = {
name:name,
email:email,
created:new Date(),
id:someId
}
//Perform the update
var request = store.put(person);
데이서의 삭제하기
var t = db.transaction(["people"], "readwrite");
var request = t.objectStore("people").delete(thisId);
인덱스 db 지원 여부 체크하기
$(document).ready(function() {
if(!("indexedDB" in window)) {
alert("IndexedDB support required for this demo!");
return;
}
var $noteDetail = $("#noteDetail");
var $noteForm = $("#noteForm");
var openRequest = window.indexedDB.open("nettuts_notes_1",1);
openRequest.onerror = function(e) {
console.log("Error opening db");
console.dir(e);
};
openRequest.onupgradeneeded = function(e) {
var thisDb = e.target.result;
var objectStore;
//Create Note OS
if(!thisDb.objectStoreNames.contains("note")) {
console.log("I need to make the note objectstore");
objectStore = thisDb.createObjectStore("note", { keyPath: "id", autoIncrement:true });
}
};
openRequest.onsuccess = function(e) {
db = e.target.result;
db.onerror = function(event) {
// Generic error handler for all errors targeted at this database's
// requests!
alert("Database error: " + event.target.errorCode);
console.dir(event.target);
};
displayNotes();
};
'웹개발 > DataBase' 카테고리의 다른 글
몽고 데이터베이스 공부 (0) | 2015.12.15 |
---|---|
angularJS 를 활용한 indexedDB 데이터처리하기 (0) | 2015.09.08 |
mysql Query log 남기기 (0) | 2015.06.21 |
MYSQL CSV 로 데이터 반환하기 (0) | 2015.01.09 |
MYSQL / FULLTEXT 검색 (0) | 2014.12.24 |
댓글