查看类别

使用 SQL 查询多记录 CSV 文件

阅读时间:6分钟

文件夹连接器 · 多记录

将包含多种记录类型的 CSV 文件转换为 SQL 表 您可以在任何地方进行查询

将查询流代理指向该文件夹。它会在自己的计算机上读取文件,并在本地缓存中构建表,并随着文件的到达、更改或删除而保持表的更新。您可以从 Excel、Google Sheets、Nova、Claude 或 REST API 查询这些表。无需上传任何文件,也无需转换或编辑任何文件。

大约15分钟 无需编程 文件保留在您的网络上 免费计划涵盖了它
遇到任何问题?尽管问我们。 打开 支持 请在“查询流”(右上角菜单 → 支持)中给我们发送消息。我们会安排专人阅读您的消息,“我不知道这个屏幕需要什么”就是一个很好的问题。

你最终会得到什么

多记录 CSV 图标最终,每种记录类型都会生成一个 SQL 表。一个 CSV 文件,其行分别标记为 HDR、ITM 和 TRL,会变成 文件集.data_hdr, 文件集.data_itm 和 文件集.data_trl每个列都包含文件夹中每个文件的该类型记录。列按位置编号。 字段1 至 字段_N每一行都包含 源文件 和 _seq这样,您就可以使用两列将标题与其详细信息连接起来。代理程序会读取其计算机上的文件夹,将行缓存到加密的本地存储中,并将其作为 SQL 提供给 Excel、Google Sheets、查询生成器或任何其他客户端。文件保留在您的网络中。

每个表都位于一个名为“schema”的模式中。 文件集表格已为您命名,每个记录标签对应一个表格: data_<tag>因此,HDR 标签变为 文件集.data_hdr。 和 表格范围 设置为 每个文件扩展名和标签对应一个表格名称变为 data_<扩展名>_<标签>这样就能将不同文件类型中的相同标签区分开来。列是 字段1 至 字段_N 按位置排列,省略标签列。每一行还包含 _seq文件中该标签的出现次数(从 0 开始计数)以及记录类型之间的连接键,加上 源文件 和 _row_id 表单路径:行。

桌子它包含什么
文件集.data_hdr每个文件中的每一条 HDR 线,作为 字段1 至 字段_N, 和 _seq 和 源文件.
文件集.数据_<标签>其他标签也一样。

每个文件夹连接器还会提供记账表格。 文件, 文件事件, 目录, 目录快照 和 卷.

文件存放位置代理可以打开的计算机或文件共享您的文件夹文件文件保留在原处查询流代理扫描文件夹,构建表格在本地缓存中运行 SQL仅选择,此处强制执行查询流一个出站链路检查谁可以看到什么内容 · 记录每个查询你在哪里使用它任何计算机,任何浏览器Excel · Google Sheets · NovaClaude · REST API · 自动化只看行,不要看文件
代理程序读取自身计算机上的文件夹,将读取到的行保存在本地加密缓存中,并针对该缓存运行所有查询。只有查询返回的行才会通过一个出站连接传输出去。无需打开端口,无需 VPN,也无需上传文件。

它的价值所在:

你需要准备什么

查询流帐户

所有套餐(包括免费套餐)都包含文件夹连接器。免费套餐是永久有效的,并非试用期。文件夹可容纳的文件数量没有上限。

代理程序,2.6.0 或更高版本

安装在可以打开该文件夹的计算机上:文件服务器本身、办公计算机或文件所在的计算机。旧版代理程序会将文件夹卡片显示为灰色并带有“显示错误”字样。 代理 2.6.0+ 徽章。支持 Windows、Mac 或 Linux 系统。

代理程序看到的文件夹路径

本地路径或网络共享,写作 \\服务器\共享\文件夹代理程序以服务形式运行,因此无法看到您登录时映射的驱动器(例如 Z: 盘)。在 Linux 系统上,请将共享挂载到以下位置: /mnt 或 /媒体.

工作在哪里进行? 在运行代理的计算机上,它会扫描文件夹,并将扫描的行复制到该计算机上的加密本地缓存(一个名为“name”的模式)。 文件集并针对该缓存运行所有查询。您的文件仅被读取,绝不会被修改、移动或上传。

分五步完成设置

  1. 在可以打开该文件夹的计算机上安装代理程序

    登录,打开 下载然后在能够打开包含多种记录类型的 CSV 文件的计算机上安装系统代理:例如文件服务器,或者任何可以访问共享文件的始终在线的计算机。安装过程只需一分钟,安装完成后即可自动运行。您需要 2.6.0 或更高版本;下载页面始终提供最新版本。

    为什么使用小型程序而不是驱动程序? 该代理程序只需安装一次,即可在 Windows、Mac 或 Linux 系统上运行(Windows 系统下约 85 MB,Mac 和 Linux 系统下略超过 100 MB)。它会打开一个与查询流的加密出站连接,这是它唯一需要的网络路径:无需打开入站端口,也无需 VPN。它会读取自身所在的文件夹,因此文件不会移动,只有查询返回的行数据才会通过互联网传输到您端的插件、浏览器或 AI 客户端。

    下载页面显示 您的访问密钥当代理提示时,将其粘贴到代理中,然后等待徽章读取。 已连接到查询流这是你在代理人的电脑上唯一要做的事情;其他所有操作都在你的浏览器中进行。

    完整攻略(如果您需要): Windows, 苹果, Linux.

  2. 指向混合了多种记录类型的 CSV 文件

    返回浏览器打开 数据 → 数据代理找到您刚刚安装的代理,然后单击其 添加连接器 按钮。打开 文件和文件夹 药丸和选择 多记录 CSV 卡片。不确定哪张卡片合适?选择一张。 文件夹中的文件 相反:代理程序会扫描文件夹,在“我们发现了什么”页面上列出文件夹的内容,并为您打开预先填充好的正确卡片。

    巫师跑 文件夹 → 检查 → 设置 → Realm → 查看。 在 文件夹:

    根文件夹
    每行显示一个路径,这是代理计算机所看到的路径。每个文件夹添加后都会立即显示一个状态(可达、拒绝、缺失、不可达)。如果共享需要登录,请在文件夹所在的行中添加登录信息;每个服务器只存储一次。
    扫描子文件夹,最大深度
    默认情况下,开启并有 8 个级别。
    包含模式,排除模式
    哪些文件有效?包含模式以该卡的正确通配符开头。一个连接器读取一种文件类型:包含 CSV 文件的文件夹。 和 Parquet 文件是同一个文件夹中有两个连接器,每种类型一个。
    跟随符号链接和连接点
    默认关闭。除非您启用此功能,否则代理程序不会遵循快捷方式或云端占位符。

    在可以打开该文件夹的计算机上安装 Query Streams Agent(2.6.0 或更高版本)。从该 Agent 的…… 添加连接器 按钮,打开 文件和文件夹 并选择 多记录 CSV 卡片。

    • 根文件夹:代理计算机上要扫描的文件夹,每行一个。网络共享类型为 \\服务器\共享\文件夹不是映射的驱动器盘符。
    • 包含模式 开始时 **/*.csv.
    • 文件布局, 记录标签列(编号) 和 分隔符:哪一列包含记录标签,以及字段之间是如何分隔的。
    • 表格范围:保留默认设置,每个标签对应一个表格。选择 每个文件扩展名和标签对应一个表格 将不同文件类型中的相同标签保存在不同的表中。

    没有 表名 领域和无 表格布局 选择。表格已命名 data_<tag>注释解释说,所有匹配的文件必须共享一个布局,该布局是在第一次同步时从样本中固定下来的;之后出现不一致的文件将被搁置并报告。

  3. 查看它将建造什么

    在 查看 代理程序读取最多 64 个文件的样本,并显示它将要构建的内容。目前尚未创建任何内容。按钮显示: 测试连接 在判决结果出来之前, 下一页; 再次测试 更改设置后,程序会重新运行样本。您将看到以下四个标题之一:

    准备创建
    每个抽样文件都符合要求。文件下方的芯片显示了可访问的文件夹数量、文件和行数,以及将要存在的表。
    准备好了,附上笔记
    部分文件将被搁置,或者布局嗅探将被拒绝。琥珀色横幅会明确指出具体是哪些文件:“{n} 个文件(共 {m} 个)将被搁置”。 找出需要哪些文件以及原因 列表中,“您仍然可以创建它——连接器将不断重新检查并在其清单选项卡上报告原因。”
    需要关注
    代理程序离线或缺少文件夹。请先解决此问题再继续;代理程序离线时,页面会显示此提示,但您仍然可以继续操作。

    被拒绝或搁置的文件不会阻止您:点击 下一页完成向导后,稍后再修复异常文件。只有代理程序离线或文件夹缺失才会导致向导停止。

    在 查看代理程序会读取最多 64 个文件的样本,并在类似“3 个表:data_hdr、data_itm、data_trl”这样的信息框中显示文件数量、大小、预估行数以及它将要构建的表(每个记录标签对应一个表)。此时尚未创建任何数据。如果标签列设置错误,代理程序列出的标签将与您的记录类型不符,这表明您需要返回并进行更改。 记录标签列(编号) 或 分隔符代理无法读取的 CSV 文件显示在下方。 找出需要哪些文件以及原因 文件被搁置,并显示“12 个文件中有 1 个将被搁置”的横幅,其余文件仍在加载。您可以通过两种方式创建连接器;它会不断重新检查并在其页面上报告原因。 显现 标签。

  4. 选择扫描频率,然后创建它

    默认值 设置 适用于每天接收少量文件的文件夹。以下四点您可能需要更改:

    扫描间隔
    每小时 默认情况下,扫描频率为每 5 分钟一次,也可选择每天一次。每次扫描都会比较文件大小和修改时间,以查找新增、已更改和已消失的文件。
    监视文件夹更改(近乎实时)
    默认关闭。启用后,代理程序会在几秒内响应本地磁盘;对于网络共享,响应速度会尽力而为,计划扫描仍是保证响应速度的手段。 静默期 (15 秒)等待文件写入完成。
    请刷新页面后再回答查询
    默认关闭。开启后,如果上次扫描时间早于查询时间,查询将首先重新扫描。 陈旧窗口 (60秒),最多等待 查询等待限制 (5 秒)。这适用于人员和插件,不适用于警报轮询。
    文件消失时
    删除它的行 默认情况下,或者 保留行,标记已删除(墓碑标记)。 这 消失的保护比率 (0.5)拒绝一次性丢失一半以上文件的扫描,并保留之前的库存,这就是离线共享的样子。

    然后选择 数据领域 检查行数是否计入统计。 审查 并点击 创建连接器首次扫描立即开始。连接器的 显现 该选项卡显示它生成的内容以及它保存的任何文件。

  5. 看看你的表格

    打开连接器: 显现 该选项卡列出了它创建的表格。 查询生成器 同样的桌子摆放在下面 文件集 模式。三个第一天就能运行的查询:

    文件头记录,按文件顺序
    SELECT _source_file, _seq, field_1, field_2 FROM fileset.data_hdr ORDER BY _source_file, _seq LIMIT 100

    每个文件的每个标题行,以及它来自的文件和它在该文件标题中的位置。

    每个文件的头部都位于其尾部旁边。
    SELECT h._source_file, h._seq, h.field_1 AS header_field_1, t.field_1 AS trailer_field_1 FROM fileset.data_hdr AS h JOIN fileset.data_trl AS t ON t._source_file = h._source_file AND t._seq = h._seq ORDER BY h._source_file, h._seq LIMIT 100

    将两种记录类型通过两个共享列 _source_file 和 _seq 连接起来,使同一文件中的第 n 个标题与第 n 个标题相遇。

    文件因标签未知或宽度错误而被搁置
    SELECT relative_path, event_type, detected_by, detail, event_at FROM fileset.files_events WHERE event_type IN ('refused', 'drift') ORDER BY event_at DESC LIMIT 20

    省略所有行的文件,并详细说明省略原因。

    每个文件夹连接器也都服务于相同的记账表,所有这些表都在…… 文件集 模式:

    桌子它包含什么
    文件文件夹中当前所有文件的概览:路径、名称、扩展名、大小、创建和修改时间、首次和最后访问时间。 files_current它还会保留已消失的文件。
    文件事件变更历史记录:每行记录一个文件。 出现, 曾是 修改的, 消失了被搁置一旁(漂移)或曾是 拒绝,随着时间推移 事件以及它是如何被注意到的 检测到 原因在于 细节.
    目录, 目录快照, 卷文件夹数量和大小、它们的增长方式,以及根目录所在的磁盘或共享文件夹。
    源文件, _row_id每行数据包含两列:该行数据来自哪个文件,以及该文件内的一个固定行 ID。按以下方式分组 源文件 比较文件。

就是这样。 将新文件放入文件夹,下次扫描后,该文件就会出现在数据库中。这些文件从未离开过它们所在的计算机。

到处使用

连接器是查询流中的数据源,与其他数据源类似。只需在查询流中保存一次即可。 查询生成器 (该数据库方言为 DuckDB),并可从以下位置使用它:

在 Excel

该插件的 流式查询 将行拖放到工作表中,然后单击即可重新运行。 在 Excel 中运行 SQL.

谷歌工作表

这 查询流 插件会填充您选择的标签页。 用于 Google Sheets 的 Power Query.

Claude、Cursor 和其他人工智能客户端

通过 Query Streams MCP 服务器,Claude 了解文件夹模型,包括 源文件 和 文件事件. 通过 MCP 与 Claude 进行多轨录音.

REST API

在每个计划中,任何已保存的查询都会成为一个具有自己键的只读端点。 多记录 REST API.

诺瓦

请用通俗易懂的英语询问商业计划书;Nova 可以根据其内置描述识别每个文件夹、表格和列。

自动化

按计划将行同步到 Airtable、Smartsheet、Baserow、SeaTable 或工作表。 自动化指南.

文件夹表也可以连接到您的其他连接器:联合查询可以匹配 源文件 CSV 文件中的名称或订单 ID 混合了针对同一代理上数据库的多种记录类型。

新建、更改和删除的文件如何显示

新增和已更改的文件

在每个 扫描间隔 (或在几秒钟内) 监视文件夹 (在)一个符合布局的新文件会被添加行并获得一个 出现 事件。已更改的文件会在一次事务中重新读取:删除旧行,导入新行,并获取一个 修改的 事件。

已删除的文件

默认情况下,消失的文件会删除其所有行;如果您选择了墓碑标记选项,则会保留已删除的行,并获得一个 消失了 事件。如果超过一半的文件一次性消失,扫描将被拒绝,之前的库存清单将保留:离线共享就是这样的。

预留文件

不符合布局、无法打开或超过上限的文件将被整体忽略:其所有行均不会加载。 文件事件 获得 漂移 指定文件和列的名称。修复文件并保存;下次扫描将再次尝试。

我所看到的景象有多新鲜?

查询结果来自上次扫描。没有“重新扫描”或“立即同步”按钮;扫描间隔、文件夹监视器和 请刷新页面后再回答查询 这是三个控制点。 MAX(last_seen_utc) 起 files_current 告诉你代理人上次查看的时间。

被搁置的文件

在“检查”步骤和“清单”选项卡上会出现三个词。它们的含义各不相同:

停放在一旁(停放)
文件与固定布局不符,或者文件无法读取、撕裂、锁定或超出限制。每个文件要么全部占用,要么全部不占用:已停放的文件不贡献任何行。 文件事件 记录 漂移 行 细节 指定文件名和列名。如果文件大小和修改时间保持不变,则跳过该文件;一旦文件大小和修改时间发生变化,则立即重试。
无法阅读
代理程序无法打开或解析该文件,因为它的类型是:不是真正的工作簿,被其他程序锁定,是云端占位符,或是无法解码的字节。它自行停止运行,文件夹的其他部分继续处理。只有当文件夹内没有任何可读文件时,代理程序才会拒绝整个文件夹的处理。
拒绝
代理程序无法固定任何布局,例如,因为文件对列类型存在冲突。目前尚无数据表。 文件事件 获得 拒绝 与原因争吵 细节代理程序会在每次扫描时重试,直到布局固定为止。修复或排除它所指的文件,消息就会消失。

在哪里看:琥珀色的横幅 查看 (找出需要哪些文件以及原因),连接器的 显现 后面跟着制表符。在 SQL 中: SELECT relative_path, event_type, detail FROM fileset.files_events WHERE event_type IN ('drift','refused') ORDER BY event_at DESC.

对于混合了多种记录类型的 CSV 文件,通常如下所示: 一个包含标记为 ADJ 的行的入站文件 batch_0920.csv(固定布局从未见过此标记)被暂存,其所有行均未加载;files_events 获得一个带有 detected_by 固定的漂移行,其详细信息命名了文件和原因。

值得了解的界限

文件夹数量或文件数量没有计划限制。与其他连接器一样,这些行也会计入您的数据域。您可以提高或降低连接器的默认设置:

环境默认它的作用
最大深度8扫描每个根目录下的文件夹层级(1-64)。
每次扫描最大文件数100,000一次性处理所有文件。
要哈希的最大文件大小32 MiB只与此有关 哈希文件内容 在。
事件日志保留30天多久 文件事件 保留行。
每个根的扫描并行度2每个根目录一次读取一个文件夹。

内容上限是指文件会被暂存而不是截断:每个文件最多 2,000,000 行或 512 MiB,每次扫描最多 10,000,000 行或 2 GiB。一个文件夹最多可以容纳 25 种不同的布局。 每个布局一张桌子 模式。

人们提出的问题

如何将表头行与其明细行连接起来?

将两张表合并 源文件 和 _seq. _seq 该指标统计文件中每个标签出现的次数,从 0 开始计数,并且是记录类型之间的连接键。如果您的文件在某个字段中包含批次号或文档号,则可以基于此进行连接。 源文件 而是那个领域。

如果文件包含连接器未识别的标签会发生什么情况?

在任何行加载之前,整个文件都会被搁置。当某一行的标签字段数量错误时,也会发生同样的情况。 文件事件 记录 漂移 记录文件名和原因的行。修复文件并保存,下次扫描会再次尝试。以表格形式添加新标签需要更改连接器:编辑并保存驱动程序选项,代理程序会重新采样。

为什么列名是 field_1、field_2 等等?

每种记录类型都有自己的宽度,因此连接器会按位置对列进行编号,但会省略标签列。布局固定时,列名保持不变。对连接器运行语义智能分析,记录每个编号字段的内容,并在查询或已保存的查询中使用别名,为它们赋予易于理解的名称。

同一个标签在不同类型的文件中可以表示不同的含义吗?

是的,只要把它们分开存放。 表格范围 至 每个文件扩展名和标签对应一个表格 表格变成了 data_<扩展名>_<标签>因此,.csv 文件中的 HDR 数据行和 .txt 文件中的 HDR 数据行会分别存储在不同的表中。添加另一个扩展名 包含模式 因此,两种文件类型都匹配。

文件必须位于运行代理程序的计算机上吗?

该文件夹必须可从该计算机访问。本地文件夹或网络共享均可。共享名称应为: \\服务器\共享\文件夹 而不是映射的驱动器号,因为代理程序以服务形式运行,无法看到您登录时映射的驱动器。新文件会直接从代理程序中获取。 扫描间隔默认情况下每小时查询一次。如果您还希望 Claude 查询这些表,请参阅 使用 MCP 将多记录 CSV 文件连接到 Claude。.

我的文件上传到哪里了吗?

不。代理程序在自己的计算机上读取这些文件,并将读取到的行保存在本地加密缓存中。程序会针对该缓存运行查询,只有查询返回的行才会通过一个出站连接离开计算机。文件不会被修改、移动或转换。

我需要开放端口还是运行 VPN?

不。代理程序会在 443 端口上建立一个出站连接,所有请求和数据行都会通过该连接传输。如果出站 HTTPS 连接正常,那么这种方式也正常。

文件夹可以位于网络共享上,或者位于 OneDrive 或 Dropbox 中吗?

只要代理人的电脑能打开,共享文件就能正常工作;输入方式如下: \\服务器\共享\文件夹因为代理程序以服务形式运行,无法看到您登录时映射的驱动器。同步的 OneDrive 或 Dropbox 文件夹只有在其文件存储在计算机上时才能正常工作:将文件夹设置为 始终将此设备放在身上代理程序不会下载仅存在于云端的文件。

文件夹里有不止一种类型的文件。是一个连接器还是两个?

一个连接器只能读取一种文件类型。包含 CSV 和 Parquet 文件的文件夹,其根目录下会有两个连接器,分别对应两种文件类型。不符合包含模式的文件会被忽略,而不是被单独保留。

是否有重新扫描按钮?

不。代理人扫描了 扫描间隔,对变化做出反应 监视文件夹 已开启,开启后会在回答查询前重新扫描。编辑连接器即可更改这三项设置中的任何一项。

免费套餐真的包含这些吗?

是的。免费版是永久有效的,不是会过期的试用版。文件夹连接器本身没有文件数量限制;行数与其他连接器一样计入您的数据域。请查看各套餐包含的内容。 定价页面.

还是不行? 打开 支持 请在“查询流”中告诉我们您当前处于第几步以及您看到的内容。我们会帮您连接。

每份指南 Multi-record

这不是你想要的配置?

  • 您的文件中每一行都具有相同的列,并且包含一个标题行吗?CSV 文件夹会将它们合并成一个表格 → CSV Folder
  • 只需要文件列表,包括文件大小、日期和更改记录?文件系统无需读取文件即可完成此操作 → File System
  • 想查看机器自身记录的信息,例如报警和循环次数?机器日志会读取控制器日志文件夹 → Machine Logs
更新 2026 年 10 月 1 日

Powered by BetterDocs