2011-10-20 4 views
7

Windows 8(winRT)のjavascriptアプリケーションでSqliteデータベースを使用することはできますか?WinRTアプリケーション(javascript)でSqliteを使用できますか?

私が達成したいのは、Sqliteデータベースをダウンロードし、これをローカルストレージに保存してから使用することです。私はローカルストレージのいくつかのフォームは、JavaScriptベースのWinRTアプリケーションで利用可能ですが、私はこのシナリオではSqliteが使用可能かどうかを知りたいと思う。

また、Sqliteの.Net実装ではwin32呼び出しがいくつか使用されていますが、これらはwindows8アプリケーションのcerififcationプロセスでは許可されないと考えています。

答えて

8

JavaScriptにはHTML5 IndexedDBが用意されています。

SQLiteについては、JavaScriptから消費できるWinRTコンポーネントとして最初にラップすることができれば、それを使用できます。 C++/CXを使用します。そのAPIサーフェスはあまり大きくないので、確かに可能です。私はずっと前にMetro用にSQLiteをコンパイルすることを実験しましたが、アプリケーションコンテナで利用できなかったいくつかのWin32 API呼び出しがあり、置き換えなければならなかっただけです。

2

はこれを見てください: http://sqlwinrt.codeplex.com/

+2

これは、WinRTのラッパーで、これはsqliteのはまだ地下鉄で許可されていないのWin32呼び出しを使用するという事実は変わりません、私はあなたが正しいかわからない – sarvesh

+0

@iaimtomisbehaveをこの記事のhttpを参照してください。。: //visualstudiomagazine.com/articles/2013/02/27/build-a-windows-store-app-using-sqlite.aspxこれは、Windowsストアアプリでsqliteを使用できることを示しています。これはMSFTから直接送信されます。 – satur9nine

+0

@ satur9nineその特定のライブラリはsですちょうどラッパーまで。私がそのコメントを作ったとき、sqlite自体はwinrtと互換性がありませんでしたが、それ以来sqliteはそれをサポートしています。 – sarvesh

5

我々はこのためSQLite3-WinRTを作成しました。 Windows Metroスタイルのアプリ認定に合格するSQLiteのWinRTコンポーネントラッパーです。また、使いやすいJavaScript抽象化も含まれています。

1

はい、SQLiteデータベースはWindows 8 RTMでサポートされるようになりました。 Windows Dev Centerからすべて(Windows 8、ツール、サンプル)をダウンロードできます。

1

はいWinRTマシンでSQLiteを使用できます。 次の手順に従います。

  1. 新しいプロジェクトを作成します。
  2. 参照先に移動して参照を右クリックすると、NuPackageの管理が表示されます。
  3. Sqlite-netパッケージのオンライン検索では、そのパッケージをintallしてください。
  4. [参照]を右クリックし、[参照の追加]をクリックすると、拡張セクションに未確認の参照MS Visual C++ランタイムとSqlite Windowsランタイムが2つ表示されます。参照と参照の両方をチェックしてください。ソリューションエクスプローラには2つのCSファイルがあります。
  5. 今すぐZipファイルをhttps://github.com/doo/SQLite3-WinRTからダウンロードしてください。これは、プロジェクトでcsファイルを使用するためのラッパーを提供します。
  6. 任意の場所で解凍します。
  7. プロジェクトで、FILE-> ADD-> Existing Project->に移動し、解凍先を参照してください。そこにSQLite3Componentの中にSQLite3Component.vcxprojというファイルがあります。そのファイルを追加します。
  8. 今すぐラッパープロジェクトがプロジェクトに含まれています。
  9. 解凍したファイルで、SQLite3JSフォルダをコピーしてソリューションエクスプローラに貼り付けます。
  10. これで、プロジェクトでsqliteを使用する準備が整いました。
  11. プロジェクトをビルドしようとすると、winres.hファイルが存在しないという2つのエラーが表示されます。そのためにはエラーの場所に移動し、winresrc.hの名前を変更してもう一度ビルドしてください。これでビルドされ、プロジェクトでsqliteを使用できます。
    1. 使用する。SQLite3JSのjsファイル、sqliteを使用するhtmlページのSQLite3JS \ js \ SQLite3.jsのようなjsファイルのsrcを提供します。 ここでは、jsでsqliteを使用するいくつかの例を挙げています //データベース名db.sqliteを作成し、テーブル名の注釈を作成します。それがない場合 var dbPath = Windows.Storage.ApplicationData.current.localFolder.path + '\ db.sqlite'; SQLite3JS.openAsync(DBPATH) .then(関数(デシベル){ リターンdb.runAsync( 'TABLEノートを作成します(IDテキストPRIMARY KEY、TEXTノート)'); 私はすべてのこれらのステップはあなたを助けることを願っています
+0

こんにちは。上記の手順を試しました。しかし、私はエラー "compobj.dllは、ole2.dllが初期化されているには古すぎます"というエラーを受け取りました。どのようにこれを解決するための任意のアイデア? – meetme

関連する問題