Pregunta

¿Es posible usar una base de datos SQLite en una aplicación JavaScript de Windows 8 (WinRT)?

Lo que quiero lograr es descargar una base de datos SQLite y almacenar esto en el almacenamiento local antes de usar. Creo que alguna forma de almacenamiento local está disponible para aplicaciones WinRT basadas en JavaScript, pero quiero saber si SQLite se puede usar en este escenario.

También soy consciente de que la implementación .NET de SQLite usa algunas llamadas Win32 y creo que el proceso de cerifique de la aplicación Windows no permitirá estas.

¿Fue útil?

Solución

JavaScript tiene HTML5 indexedDB disponible para él fuera de la caja.

En cuanto a SQLite, puede usarlo, siempre que primero lo envuelva como un componente WinRT que se puede consumir de JavaScript, por ejemplo, usando C ++/CX. Su superficie API no es tan grande, por lo que ciertamente es posible. He experimentado compilando SQLite para Metro hace un tiempo, y solo hubo unas pocas llamadas de API Win32 que no estaban disponibles en el contenedor de aplicaciones y tuvieron que ser reemplazados, nada importante.

Otros consejos

Creamos Sqlite3-winrt para esto. Es un envoltorio de componentes WinRT para SQLite que pasa la certificación de la aplicación Windows Metro Style. También incluye una abstracción JavaScript fácil de usar.

Sí, la base de datos SQLite ahora se admite en Windows 8 RTM. Ahora puede descargar todo (Windows 8, herramientas, muestras) de Windows Dev Center.

Sí, puede usar SQLite en WinRT Machine. Solo sigue los siguientes pasos

  1. Crea un nuevo proyecto.
  2. Vaya a referencias, luego haga clic derecho en las referencias allí obtendrá administrar Nupackage, haga clic en eso.
  3. En la búsqueda en línea del paquete SQLite-Net, intall ese paquete.
  4. Nuevamente, haga clic con el botón derecho en las referencias y haga clic en Agregar refencias, en la sección Extension obtendrá dos referencias sin control MS Visual C ++ Time de ejecución y tiempo de ejecución de SQLite Windows. Verifique tanto la referencia como agregar referencias. Serán dos archivos CS en su explorador de soluciones.
  5. Ahora descargue el archivo zip desde https://github.com/doo/sqlite3-winrt Le proporcionará el envoltorio para usar archivos CS en su proyecto.
  6. Descomprima en cualquier lugar.
  7. Ahora, en el proyecto, vaya a Archivo-> Add-> Proyecto existente-> y explore su ubicación de Unzip. Allí obtendrá un archivo sqlite3component.vcxproj dentro del sqlite3component. Agregue ese archivo.
  8. Ahora el proyecto WRAPPER está incluido en su proyecto.
  9. Ahora, en sus archivos descomprimidos, obtendrá la carpeta SQLITE3JS copiar esa carpeta y pegar en su explorador de soluciones.
  10. Ahora está listo para usar SQLite en su proyecto.
  11. Intente construir su proyecto, mostrará dos errores que el archivo WinRes.h no está allí. Para esa ubicación de error, vaya a su nombre a WinResrc.h y construya nuevamente. Ahora se construirá y puede usar SQLite en su proyecto.
    1. Para usar el archivo .js de SQLITE3JS, proporcione el archivo SRC de JS como SQLITE3JS JS SQLITE3.JS en la página HTML donde va a usar SQLite. Aquí le estoy dando algún ejemplo para usar SQLite en JS // Esto creará el nombre de la base de datos db.sqlite e intentará crear un nombre de la tabla notas. Si no está allí var dbpath = windows.storage.applicationdata.current.localfolder.path + ' db.sqlite'; Sqlite3js.openasync (dbpath) .Then (function (db) {return db.runasync ('Crear notas de tabla (clave de texto de identificación Clave primaria, texto de notas)'); Espero que todo este paso lo ayude.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top