Windows 8应用程序的嵌入式数据库[关闭]
Posted
技术标签:
【中文标题】Windows 8应用程序的嵌入式数据库[关闭]【英文标题】:Embedded database for windows 8 app [closed] 【发布时间】:2011-12-28 11:14:55 【问题描述】:是否有任何类型的可嵌入数据库用于 Windows 8 应用程序开发?
我一直在寻找与 Visual Studio 11 集成的 Sqlite 之类的东西。
【问题讨论】:
@John Saunders:SQL Server CE 不能用于 Windows 8:social.msdn.microsoft.com/Forums/en-US/winappswithcsharp/thread/… 【参考方案1】:Generic Object Storage Helper for WinRT 和 WinRTFile Based Database 可能会派上用场。
另外,正如@Pavel Minaev 所暗示的,Tim Heuer confirmed:
...请注意,虽然很棒,但 codeplex 上的 SQLWinRT 项目是 与经典 SQLite 引擎通信的包装器......它使用 目前无法通过商店验证的 API。
因此,如果您想走 SQLite 路线,则必须进行一些修改以使其通过应用商店验证。
【讨论】:
【参考方案2】:对于 javascript,您最好只使用 html5 IndexedDB。不幸的是,这并不直接适用于其他语言。
还有第二种选择:Windows 有一个集成的嵌入式数据库,格式为Extensible Storage Engine。这是一个比较简单的ISAM DB(没有SQL,需要直接查询索引)。它是 Metro 应用程序的白名单 API。
在 C++ 中使用它很简单 - 只需 #include <esent.h>
并继续。对于 C#,您需要使用 P/Invoke。对于 JavaScript,您需要使用 C++/CX 围绕 ESE API 编写一个包装器。
另一种选择是采用 SQLite 并使其为 WinRT 编译(并通过应用程序认证检查以检查被禁止的 API)。您需要对代码进行一些调整才能使其正常工作,但数量并不多。
【讨论】:
以上是关于Windows 8应用程序的嵌入式数据库[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何将 Windows Server 2012 r2 打造成 Windows 8.1
Spring Boot 内嵌启动脚本配置(Customizing the startup script)