c# - 在没有安装数据库程序的情况下使用C#读取数据库文件?

标签 c# mysql database

我对数据库还很陌生,尽管我一直在做教程等以加快速度,但我想知道:如果我有一个在 MySQL 或 MSSQL 中创建的数据库,我可以使用它来访问它吗? C# 机器上没有安装数据库服务器吗? 如果我编写一个使用小型数据库的程序,例如 4 个表,每个表的元素少于 100 个,我将如何在我发布的 C# 程序中部署它?请记住,这个问题不是关于在程序中使用数据库的优点,而是关于从已发布的 C# 程序访问数据库文件 (.mdf) 的机制,而无需在目标上安装数据库服务器机器。我在 MSDN 上看到过很多关于这个问题的文章,但我还没有找到能回答这个问题的文章。

谢谢

最佳答案

本质上有 3 种类型的数据库实现:

  • 服务器安装 - 想想“SQL Server”、“Oracle” - 在这里,数据库纯粹在服务器上;调用者需要客户端库(即理解数据库协议(protocol)的东西),但通常可以部署为应用程序的一部分,或者是机器上已有的标准框架的一部分;这里中央服务器通常会同时为多个客户端提供服务
  • 客户端安装 - 想想“SQL Server Express”等 - 这里在客户端机器上安装了一个专用的数据库实用程序;同样,应用程序需要客户端库,但数据库引擎通常是一个单独的产品/安装,需要为每个客户端进行
  • 嵌入式数据库 - 可能就是您的目标;在这种情况下,“客户端库”实际上包括整个数据库引擎,允许应用程序完全独立;这往往提供三者中最少的功能,但通常足以满足大多数常见场景

所以:只要你将自己限制在第三类,就应该没问题。

关于c# - 在没有安装数据库程序的情况下使用C#读取数据库文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20470798/

相关文章:

c# - JSON.Net 序列化程序忽略 JsonProperty?

c# - C# 通用属性限制的解决方法

c# - ImageSourceConverter 抛出 NullReferenceException ... 为什么?

mysql - 需要 SQL 中的一组字段中的一个

c# - 用于访问 SFTP 与 VPN 隧道的任何开源库 - 使用 C# 的 FTP

mysql - 优化一个 SQL 查询

mysql - 如何显示 "parent"公司以及给定位置的设施数量?

Django,级联移动到一个单独的表而不是级联删除

sql - 多种选择的数据库设计

database - 从 1.4.200 升级 H2 版本 2.0.202