-1

我的 C++ 应用程序需要具有关系特性的无模式数据库。

我已经在我的项目中使用了 PostgreSQL 和 Mysql。

我想将数据以关系方式存储在文档中,并且需要使用 SQL 进行 CRUD。

4

4 回答 4

0

“关系”和“无模式”是相互排斥的。

于 2019-05-24T07:58:18.157 回答
0

现代 DBMS 支持多种数据模型。例如,SQL Server 支持关系、面向文档(XML 和 JSON)和图形(网络)数据模型。您可以在同一个数据库中组合使用不同的模型。一个典型的例子是,文档表包含与最重要的属性(包括键)相对应的几列,以及一个存储 XML 的列。

但是,关系数据模型默认结构良好,因此很难实现无模式的关系数据库。这可以通过仅使用一些“变体”数据类型的 Excel 工作表或表格来模拟,但这样的解决方案似乎很脆弱并且存在性能问题。

另一种方法是在关系数据库中使用 EAV 扩展。

您可以查看“数据库编程”一书,其中包含一些使用 Yes/NoSQL 的示例。

于 2019-05-24T12:36:23.340 回答
0

请看一下 AgensGraph 数据库。AgensGraph 是唯一真正支持关系型数据库和图型数据库(无模式)的多模型数据库。它还支持键值和文档模型。它也是基于C语言的。

代理图

于 2019-05-30T18:32:21.390 回答
0

根据您的参数对您的特定问题的实际答案:

  1. 无架构
  2. 增删改查支持
  3. SQL“喜欢”,又名关系
  4. C++ 支持

ArangoDB

于 2019-05-30T21:45:36.447 回答