
166 - 프로그레시브 웹 앱
먼저
readwrite
트랜잭션을 열고
exchange
_
rates
객체 저장소를 불러옵니다.
그다음 업데이트된 객체와 교체하려는 객체 키를 사용해 객체 저장소의
put()
메소드를 호출합니다.
이 방식은
(
고객 여권번호를 가리키는 키 경로를 사용하는
customers
저장소와는 달리
)
exchange
_
rates
객체 저장소와 같이 아웃오브라인 키
(159
페이지의 ‘인라인 키
VS
아웃오브라인 키’ 참조
)
를 사용하는 객체 저장소에만 사용될 수 있습니다.
인라인 키를 사용하는 객체 저장소의 객체를 업데이트할 때나 혹은 객체의 아웃오
브라인 키를 알지 못할 때는 우선 객체 저장소에서 객체를 먼저 가져와야 합니다.
그런 다음 객체 저장소의
put()
혹은 커서의
update()
를 호출하여 내용을 변경
하고 업데이트할 수 있습니다.
다음 코드는 두 가지 접근 방식을 보여줍니다.
var request
=
window
.
indexedDB
.
open
("
my
-
database
",
4
);
request
.
onsuccess
=
function
(
event
)
{
var db
=
event
.
target
.
result
;
var customerTransaction
=
db
.
transaction
("
customers
",
"
readwrite
");
var customerStore ...