Embedded database for windows 8 app [closed]
Asked Answered
H

2

6

Is there any kind of embed-able database for windows 8 app development?

I was looking for something like Sqlite or etc which integrate with visual studio 11.

Hock answered 28/12, 2011 at 11:14 Comment(1)
@John Saunders: SQL Server CE is a non-starter for Windows 8: social.msdn.microsoft.com/Forums/en-US/winappswithcsharp/thread/…Ramonitaramos
P
3

For JavaScript, you're probably best off just using HTML5 IndexedDB. Unfortunately, that is not directly available to other languages.

There is a stock second option: Windows has an integrated embedded database in form of Extensible Storage Engine. It's a relatively simple ISAM DB (no SQL, you need to query indices directly). It is a whitelisted API for Metro applications. Using it from C++ is straightforward - just #include <esent.h> and go ahead. For C#, you'll need to use P/Invoke. For JavaScript, you'll need to write a wrapper around ESE API using C++/CX.

Yet another option is to take SQLite and make it compile (and pass app certification check for banned APIs) for WinRT. You'll need to make some tweaks to the code to get it to work, but there aren't many.

Piscary answered 28/12, 2011 at 17:33 Comment(0)
R
4

Generic Object Storage Helper for WinRT and WinRTFile Based Database might come in handy.


Also, as @Pavel Minaev implied, Tim Heuer confirmed:

...Please note that while awesome, the SQLWinRT project on codeplex is a wrapper to communicate with the classic SQLite engine...which uses APIs that would not pass store validation currently.

So if you want to go the SQLite route, you'll have to make some modifications to get it to pass app store validation.

Ramonitaramos answered 31/12, 2011 at 17:36 Comment(0)
P
3

For JavaScript, you're probably best off just using HTML5 IndexedDB. Unfortunately, that is not directly available to other languages.

There is a stock second option: Windows has an integrated embedded database in form of Extensible Storage Engine. It's a relatively simple ISAM DB (no SQL, you need to query indices directly). It is a whitelisted API for Metro applications. Using it from C++ is straightforward - just #include <esent.h> and go ahead. For C#, you'll need to use P/Invoke. For JavaScript, you'll need to write a wrapper around ESE API using C++/CX.

Yet another option is to take SQLite and make it compile (and pass app certification check for banned APIs) for WinRT. You'll need to make some tweaks to the code to get it to work, but there aren't many.

Piscary answered 28/12, 2011 at 17:33 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.