【问题标题】:VB.NET Application using SQL or Local DB使用 SQL 或本地 DB 的 VB.NET 应用程序
【发布时间】:2017-01-23 22:05:41
【问题描述】:

我正在开发一个应用程序,并试图提供使用“本地”数据库或 SQL Server 数据库的能力。我要解决的是最好的本地数据库格式以及如何编写查询。

目前我一直在使用 SQL Server CE,它似乎工作正常,但是我需要为任何查询编写每个代码块两次(一次用于 SQL,一次用于 SQL Server CE)。有什么解决办法吗?有什么方法可以传递不同的连接字符串吗?

我目前拥有的是一个“子”,我检查是否使用本地 (my.setting.uselocal),然后调用函数 Query_SQL 或 Query SQL。我想每个数据库查询必须有两个块很快就会很累?

关于如何更有效地做到这一点的任何建议?

干杯

【问题讨论】:

  • 您正在寻找每个数据库开发人员的圣杯。一个代码来统治他们。我建议看看 ORM(对象关系映射器)。其中一些库非常棒,就像 SO (Dapper) 背后的库一样
  • 我是这么认为的。复制/粘贴代码相当简单,只需更改 4 项即可工作。但是如果有更简单的方法那就太好了:)
  • 同样,(尽管是部分的)解决方案是将代码划分为逻辑层。描述数据的模型、作用于数据的业务逻辑、呈现数据的 UI 层以及与数据库交互的数据库层。最后一部分可以由像 Dapper 这样的 ORM 处理,并将您的代码与数据库差异的讨厌细节隔离开来。用 dapper 搜索一些例子,你就会明白它的强大。
  • 本地使用 SQL Server Express(免费),集中使用完整的 SQL Server
  • 谢谢,我想看看我是否可以提供一个不需要在本地机器上额外安装的解决方案(即便携式)。

标签: sql-server vb.net sql-server-ce sqlcedatareader


【解决方案1】:

您可以尝试创建一个 .sdf 文件。这些可以通过编程方式创建,以及文件中的数据库/表等。

我已经很长时间没有使用它们了,但是 IIRC 您可以使用相同的 tsql 语法进行读/写。我原以为它会允许您使用相同的查询功能,然后您可以传递任何连接。

【讨论】:

  • 这就是我在这个阶段一直在使用的东西,但是在 VB.NET 中使用时需要对基于 SQL 或 SQLCE 的连接/命令进行不同的声明。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-06-28
  • 1970-01-01
  • 1970-01-01
  • 2015-11-08
  • 2021-11-10
  • 1970-01-01
相关资源
最近更新 更多