问题标签 [sql-graph]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
110 浏览

c# - SqlBulkCopy 是否支持 MsSql 2017 中的图形表?

我正在尝试添加到 Microsoft SQL Server 2017 的新图形数据库支持, 我想使用 SqlBulkCopy 将几千个节点插入节点表。但是我总是错误: Column '$node_id_DB218B0EAE294E37804103CF4E82BCD2' does not allow DBNull.Value.

我的表是这样创建的

我准备了一个包含所有属性的数据表,并像这样调用 SqlBulkCopy:

现在我想知道我是否做错了什么,或者这是否还不受支持。

0 投票
1 回答
2252 浏览

graph - 性能 SQL Server 2017 图表与 Neo4j

我正在研究图形数据库。我偶然发现了 SQL Server 2017,并了解到他们添加了使用图形数据库的选项。但我对性能有一些不确定性。我观看了几个关于这个 SQL Server 2017 Graph 的 Youtube 视频、教程和论文。例如这个页面

图像,在 SQL 服务器中查找

考虑到上面的图像。当我试图找到一个节点时,时间复杂度是否真的是 O(n)?Neo4j 等其他图形数据库的性能是否相似?我只是在谈论节点查找而不是最短路径算法等。

我也有一种感觉,SQL Server 中的图形功能只是变相的关系数据库。它是否正确?

提前致谢。

0 投票
2 回答
162 浏览

sql-server - SQL Server:图形/层次结构 SQL 结构

经过N小时的设计,如何将这样的结构保存到关系数据库(SQL Server)中。

在此处输入图像描述

我结束了这个结构,但它并不是很好。

任何人都有更好的想法如何将此结构保存在 SQL Server 等关系数据库中?

谢谢

0 投票
0 回答
120 浏览

sql-server - 如何使 LINQPad 与 SQL Server 的图形一起工作?

SQL Server 中的Graph Table自动为用户添加了一个内部 graph_ID_ 列。在 LINQPad 中查询表时,出现此错误。

在此处输入图像描述

这是在 LINQPad 中生成的 SQL。看起来 LINQ_TO_SQL 检测到此列,并将此列视为普通列,但 SQL Server 不允许我们访问它。

在此处输入图像描述

我可以在没有此列的情况下编写 LINQ 查询,它可以正常工作。但由于它是一个自定义查询,我失去了编辑记录的能力。

在此处输入图像描述

0 投票
1 回答
126 浏览

sql-server - 如何在 SQL Server 2017 中将“生成脚本”与图形数据库对象一起使用?

我正在尝试使用Generate ScriptsSQL Server Management Studio 的功能来编写包含 Node 和 Edge 表的数据库的架构和数据的脚本。当我在高级选项中选择Schema and DataforTypes of data to script时,我得到以下异常,显示在后脚本失败报告中:

System.Data.SqlClient.SqlException:
无法访问内部图形列“graph_id_65236D8A22184389B40ACEF8C7BA629D”

这是一个错误吗?

如何使用该Generate Scripts功能为 SQL Server 2017 中包含图形对象的数据库编写架构和数据脚本?

0 投票
1 回答
163 浏览

sql - SQL Graph 最短路径示例

提供在 SQL Server 2019 上使用最短路径的示例。技术称为 SQL Graph。

我们如何列出从根目录下来的所有部分和相关路径?

0 投票
1 回答
1223 浏览

sql-server - sql server图查询,找到节点的所有路径

我有一个非常常见的问题,我正在尝试使用图形查询(sql server 2017)来解决。

在此处输入图像描述

  1. 我想构建一个查询并查找节点中的任何人如何连接到C.
  2. 我想构建一个查询并查找节点中的任何人是如何连接的C(通过 1 个或 2 个连接)。

这是创建此图的完整脚本:

这个查询不起作用,因为它只给我直接关系:

0 投票
0 回答
84 浏览

sql - 使用数据复制 Sql Server Graph 数据库

我有一个简单的 SQL 图形数据库。

数据库:

我想将这些表复制到不同的表中。我的目标是在 C# 中实现它,但简单的 TSQL 解决方案就足够了。

如果我只读取用户数据而不是内部列 $node_id,我可以轻松地从节点表中复制数据:

但在旅行表中,我只有以下信息:

为了复制它,我需要在表 Person、City、Travels 上创建一个连接以获取原始 IDS,然后将其与 Person2 和 City2 连接以获取 Travels2 的新值 $from_id、$to_id

另一种选择是使用函数 Graph_ID_FROM_NODE_ID 和 NODE_ID_FROM_PARTS:

可能,我不需要复制边的 id,所以最后一次插入会更容易一些,但我想知道,如果没有更简单的方法来复制图表。

0 投票
1 回答
462 浏览

sql-server - 将 SQL Server 图形数据库中的 MATCH 子句和 INNER JOIN 与混合模型相结合

我在 SQL Server 中有一些节点和边缘表,它们与存储用户的标准表具有一对多的关系。每个边和节点表都有这个 1N 的关系。

我想知道如何使用匹配子句和左连接执行查询,如下所示:

我可以这样写查询:

但我不知道 n1 是来自还是反对。

我不能进行内部连接,因为 e.usr 可能为空

谢谢您的帮助

编辑:

测试 1:

测试 2:

测试 3:

0 投票
0 回答
87 浏览

sql-server - SQL Server 图形边缘插入

在我的模型中,我有两个节点 ACCOUNT 和 WARNING。ACCOUNT 可以有零到多个警告。

ACCOUNT 节点有多个列,其中 ACCOUNTNUMBER 作为唯一列。

WARNING 节点具有 WARNINGCODE、WARNINGDESCRIPTION 和 EXPIRATIONDATE。我还创建了一个边缘表 HAS_A_WARNING,除了通常的列之外,我还有 ExpirtionDate。

我有一个临时表,其中包含 ACCOUNTNUMBER、WARNINGCODE、WARNINGCODEDESCRIPTION、EXPIRATIONDATE。当我运行以下语句时,出现错误:

Msg 116, Level 16, State 1, Line 17 当子查询没有用 EXISTS 引入时,只能在选择列表中指定一个表达式。消息 213,级别 16,状态 1,行 2 列名称或提供的值的数量与表定义不匹配。