【发布时间】:2013-07-30 01:45:55
【问题描述】:
我可以与 Entity Framework 一起使用的最好的独立数据库(无需安装,直接从 .dll 运行)是什么?此外,很少有 .dll 是一个优点。
【问题讨论】:
-
你如何定义“最佳”?
标签: c# .net database vb.net entity-framework
我可以与 Entity Framework 一起使用的最好的独立数据库(无需安装,直接从 .dll 运行)是什么?此外,很少有 .dll 是一个优点。
【问题讨论】:
标签: c# .net database vb.net entity-framework
SQLite 就是这样一个独立的 DB(无需安装,直接从 .dll 运行)。
【讨论】:
还有 SQL Compact (http://msdn.microsoft.com/en-us/data/ff687142.aspx)。不过,与它的老大哥相比,它的功能集有些有限。
一些限制:http://technet.microsoft.com/en-us/library/cc835494.aspx
•SQL Server Compact 4.0 支持具有服务器生成的实体 值,但仅适用于标识列。如果您的模型映射到 具有服务器生成值的非身份列,“不支持” 抛出异常。
•SQL Server Compact 4.0 不支持具有重复的架构 约束名称。
在 SQL Server Compact 中,约束名称在表中是唯一的 这可以允许在数据库中重复的约束名称。这 行为不同于 SQL Server,其中约束名称是 在数据库中是唯一的。如果 SQL Server Compact 4.0 架构具有 重复参照完整性(主键 - 外键 关系)约束名称,实体数据的生成 使用实体数据模型向导的模型将失败。你应该永远 保持约束名称在整个数据库中唯一,例如通过添加 表名改为约束名。
•SQL Server Compact 不支持聚合中的 DISTINCT(最大值、最小值、 总和,计数)。
•SQL Server Compact 在使用时不支持命令超时 使用实体框架。
•SQL Server Compact 仅支持 Unicode 字符串。
•SQL Server Compact 不支持存储过程和视图。
【讨论】: