首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >并发访问轻量级/(嵌入式?)SQL数据库由多个应用程序在同一台本地机器上运行?

并发访问轻量级/(嵌入式?)SQL数据库由多个应用程序在同一台本地机器上运行?
EN

Stack Overflow用户
提问于 2013-01-21 08:35:09
回答 2查看 2K关注 0票数 2

我正在寻找一种解决方案,其中几个应用程序在同一台机器上访问一个和同一个数据库。通常,操作只是读取,因此我也不想提供并发的写访问。

我签了、Server、SQL、SQLite、MySQL,不确定哪一种是最好的解决方案。我读到SQL允许并发读取访问,但Server不允许,我发现这很奇怪,因为LocalDb被MS吹捧为一个功能非常类似于Server系列的版本,并且应该使以后易于扩展。

我喜欢管理5-10个表,每个表容纳的行少于5000行,所以非常轻量级的内容。

我正在寻找一种满足以下要求的解决方案:

  • 同一台机器上多个应用程序的并发读取访问
  • 应该是轻量级的。我打算稍后将解决方案中的所有应用程序移动到另一台计算机上,如果可能的话,我不希望安装200 if的完整Server @ress版本。
  • 应该很好地使用VS2012 express (sqlite和mysql在这方面非常不受支持,要么不支持EF5,要么不出现在服务器资源管理器中。
  • 应该是SQL解决方案,以便在管理控制台(如Workbench或management或其他第三方应用程序)中手动更新数据库表。
  • 应该与EF或其他ORM解决方案一起工作。我希望能够创建一个实体类,并从该类创建一个数据库,或者使用类对象更新表。此外,我希望从表行填充类对象集合,而不必遍历SQL代码。

我的目标是C# 4.5中的.Net,我想这归结为一个问题: SQL是否能够完成并发读取,以及如何加载CE数据表,以及如何在某种管理控制台中编辑和可视化内容。SQL也能很好地使用EF5吗?有更好的建议吗?

EN

回答 2

Stack Overflow用户

发布于 2013-01-21 08:37:41

既然你在征求意见,SQLite就是我的答案。

我们知道没有其他嵌入式SQL数据库引擎像SQLite那样支持并发性。SQLite允许多个进程同时打开数据库文件,并允许多个进程同时读取数据库。当任何进程想要写入时,它必须在更新期间锁定整个数据库文件。但这通常只需要几毫秒。其他流程只需等待作者完成,然后继续他们的业务。其他嵌入式SQL数据库引擎通常只允许一个进程同时连接到数据库。

  • 基于SQLite的实体框架
  • System.Data.SQLite

32位Windows的设置(.NET Framework4.5)

此安装包能够安装Visual 2012的设计时组件。

票数 1
EN

Stack Overflow用户

发布于 2013-01-21 09:51:01

SQL与EF5和VS 2012 Express一起工作,非常轻量级,支持同一台机器上的多个读取器,并且可以在VS Pro+中与外接程序(或独立的)相结合进行管理(我是作者)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14434916

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档