TSL_Init 函数

TSL_Init 函数初始化用于装入数据的会话。

语法

TSL_Init(
         table_name     varchar(128),
         column_name    varchar(128))
returns integer;TSL_Init(
         table_name     varchar(128),
         column_name    varchar(128)
         tstamp_format  varchar(25))
returns integer;TSL_Init(
         table_name     varchar(128),
         column_name    varchar(128),
         tstamp_format  varchar(25),
         reject_file    varchar(255))
returns integer;TSL_Init(
         table_name     varchar(128),
         column_name    varchar(128),
         log_type       integer,
         log_level      integer,
         logfile        varchar(255))
returns integer;TSL_Init(
         table_name     varchar(128),
         column_name    varchar(128),
         log_type       integer,
         log_level      integer,
         logfile        varchar(255),
         tstamp_format  varchar(25))
returns integer;TSL_Init(
         table_name     varchar(128),
         column_name    varchar(128),
         log_type       integer,
         log_level      integer,
         logfile        varchar(255),
         tstamp_format  varchar(25),
         reject_file    varchar(255))
returns integer;TSL_Init(
         table_name     varchar(128),
         column_name    varchar(128),
         log_type       integer,
         log_level      integer,
         logfile        varchar(255),
         tstamp_format  varchar(25),
         reject_file    varchar(255),
         where_clause   lvarchar)
returns integer;
table_name
时间系列表的名称。不能包含大写字母。表必须包含 TimeSeries 列并具有主键。
column_name
TimeSeries 列的名称。不能包含大写字母。
log_type(可选)
消息日志的类型:

0 = 无消息日志

1 = 将所有消息记录到指定文件

2 = 记录装入器程序队列中的所有消息以供 TSL_GetLogMessage 函数检索

3 = 缺省值。将所有消息记录到服务器消息日志

log_level(可选)
消息日志文件中包含的信息的严重性:

2 = 警告消息和错误消息。

4 = 错误消息。

logfile(可选)
如果 log_type 参数的值设置为 1,那么为装入器消息日志文件的路径和文件名。
tstamp_format(可选)
用于描述时间戳记格式的字符串。缺省格式为:%Y-%m-%d %H:%M:%S。字符串必须符合 DBTIME 环境变量指定的格式,但可以在日期部分和时间部分之间包含管道字符 (|)。管道字符指示日期和时间位于不同字段中。例如,可以使用双字段格式:%Y-%m-%d|%H:%M:%S。
reject_file(可选)
用于存储未应用的记录的路径和文件名。 例如,所包含字段数不正确或格式错误的记录不会应用。缺省情况下,将仅记录被拒绝的记录数。
where_clause(可选)
要附加到由装入器生成的 WHERE 子句的其他谓词。该谓词可以标识时间系列数据中要装入的子集。由于 WHERE 子句会将整个装入器会话限制为时间系列数据的子集,因此包含 WHERE 子句时请慎重。该谓词必须以关键字 AND 开头。例如:AND meter_id = "A100"

用法

作为装入器程序的一部分,使用 TSL_Init 函数初始化会话。TSL_Init 函数必须是装入器程序中运行的第一个函数。TSL_Init 函数为装入器创建全局上下文并打开数据库会话。通过运行 TSL_Attach 函数,可以打开其他数据库会话。通过运行 TSL_SessionClose 函数,可以关闭数据库会话。在运行 TSL_Shutdown 函数或重新启动数据库服务器之前,全局上下文将一直保持有效。

返回结果

示例

以下语句为表 ts_dataTimeSeriesraw_reads 初始化装入器会话:

EXECUTE FUNCTION TSL_Init('ts_data','raw_reads',
               '%Y-%m-%d %H:%M:%S','/tmp/rejects.log',NULL);

输入数据使用单列时间戳记格式。被拒绝的记录会保存在文件中。