微软 SQL 服务器 (MSSQL)
发送 SQL 查询到 Microsoft SQL 服务器。
特定设置
配置 SQL 连接器向 Microsoft SQL 服务器发送 SQL 查询时,您需要提供以下详细信息:
- 主机:Microsoft SQL 服务器的地址。
- 端口:MSSQL 服务器端口(默认为 1433)。
- 数据库:要连接的数据库名称。
- 用户名:用于身份验证的用户名。
- 密码:用于身份验证的密码。
- 域(可选):在连接到 Active Directory 域时有用。
- 使用加密:选择加密数据库与 OIBus 之间的数据(请注意,加密可能会使服务器负担过重)。
- 信任服务器证书:即使服务器证书过时或自签名也接受的选项。
- 连接超时:建立连接的超时设置。
- 请求超时:每个 SQL 查询的超时。
数据库访问
出于安全和数据完整性目的,建议使用只读用户连接到数据库。
项目设置
在 South 连接器中,每个项目都可以根据选择的扫描模式进行配置以被查询。同一个 South 连接器内可以配置对同一数据库的多个查询。OIBus 将依次执行这些查询, 准备输出文件,然后将其发送到 North 连接器。
查询
South 连接器中的查询字段接受 SQL 语法,并且可以利用几个内部变量。这些变量用于多种目的,包括在连接失败时增强数据流的韧性以及将大时间间隔分解为更小的块,这有助于减轻服务器和网络的负载。更多信息,请参考大查询部分。
查询变量
在 OIBus 中,你可以使用以下内部变量,系统将解释这些变量:
- @StartTime:最初,@StartTime 变量设置为查询第一次执行的日期。当从数据库检索到结果时,@StartTime 值更新为这些结果中用作参考的字段的最新时间戳(参考日期时间字段部分)。
- @EndTime:@EndTime 变量设置为当前时间(now())或者如果查询被分割,则为子间隔的结束时间。
包含 @StartTime 和 @EndTime 的 SQL 查询
SELECT data_name AS dataName, value, timestamp FROM table WHERE timestamp > @StartTime AND timestamp < @EndTime