2014-02-21 3 views
2

나는 SQL 사용자이지만 Dart에서 오프라인 응용 프로그램을 프로그래밍하기 시작했으며 IndexedDB를 사용하여 로컬 데이터를 저장하는 것이 좋습니다. LawnDart를 사용하여 이러한 IndexedDB 데이터베이스를 작업하고 고유 한 키 (유닉스 타임 스탬프)를 생성하고 값 열에 JSON 문자열로 데이터를 저장합니다.IndexedDB 주문

제 질문은이 데이터를 JSON 문자열에 포함 된 열로 어떻게 정렬합니까? 또는이 데이터베이스를 잘못된 방식으로 완전히 사용하고 있습니까?

건배!

+0

JsStore를 사용할 수 있습니다. 그것은 db 작업을 수행하는 API와 같은 sql을 제공합니다. JsStore 링크 - http://jsstore.net/ –

답변

1

내가 원하는 것은 WebSQL (SQLite를 사용)입니다.

  • IndexedDB in Dart

    WebSQL

      는 웹킷 기반 브라우저가 지원하는 브라우저에서 SQLite 데이터베이스입니다. WebSQL은 강력하고 상당히 잘 알려져 있지만, Firefox 나 Internet Explorer에서는 구현되지 않을 것이며, 사양은 림보 (limbo)에있다.
    IndexedDB는 KeyValue 저장소 인 것 같습니다. 다른 순서로 동일한 값을 정렬하려면 IndexedDb에 추가 인덱스를 만들어야합니다 (그리고 아마도 각각에 개체를 저장해야합니다).

  • +0

    원래 웹킷 사용을 고려했지만 웹킷 브라우저 만 지원하므로 오프라인 기능은 사용할 때만 사용할 수 있습니다. 크롬에서 오프라인으로 실행할 수있는 유일한 장소 (현재)가 중요하기 때문에 문제가되지 않는다고 생각합니다. 감사! – trvo

    +0

    @trvo WebSQL은 오랫동안 사용되지 않았습니다. 나는이 해답이 내 의견을 내기 몇 년 전에 작성되었다는 것을 알고 있지만, 그 전에 몇 년 전에 이미 금지되었다. – AviD

    +0

    공식 표준에 대해 옳았 는데도 Chrome은 공식적으로 공식 AFAIK를 지원합니다. –

    0

    timestamp 필드를 주문 하시려면 timestamp으로 색인을 생성하면됩니다.

    +0

    나는 이미 타임 스탬프에 의해 인덱스를하지만, 날짜 필드는 어떤 날짜도 될 수 있으며, 플러스는 다른 열에도 정렬 할 수 있어야합니다. 키 값 db는 현재 사용중인 방식으로 앞으로 보이지 않습니다. – trvo

    +0

    좋아, WebSQL과 함께 가라. –