lname[1,3] || zipcode :file_variable || '.dbg' 'Date:' || TODAY
虽然诸如 cursor_id 规范这样的 DECLARE 语句的输入参数不可为包括串联运算符的表达式,但 GBase 8s ESQL/C 例程可在 DECLARE 语句内的 SELECT、INSERT、EXECUTE FUNCTION 或 EXECUTE PROCEDURE 语句中使用此运算符。
GBase 8s ESQL/C 例程可在 SQL 语句的文本中或在您传递到 PREPARE 语句的语句中使用串联运算符。
在 SPL 例程中,您可在指定传递到 EXECUTE IMMEDIATE 语句或 PREPARE 语句的 SQL 语句的文本的表达式中包括串联运算符,即使该 SPL 例程的调用上下文是一 GBase 8s ESQL/C 例程。
您不可随同用户定义的数据类型、随同复合的或大对象数据类型直接地使用串联运算符,也不可随同非内建的字符或数值数据类型的运算对象使用。在您可将结果传递到串联运算符之前,您必须将 UDT 或其他被支持的数据类型显式地强制转型为内建的字符或数值数据类型。
串联运算的结果的数据类型依赖于运算对象的数据类型以及结果字符串的长度,使用 从 CONCAT 函数的返回类型 部分描述的返回类型提升规则。
串联运算符(||)有相关联的名为 CONCAT 的运算符函数。不可重载 CONCAT 函数。
当您定义基于文本的 UDT 时,您可定义 CONCAT 函数来串联用户定义的数据类型的对象。要获取更多信息,请参阅 GBase 8s 用户定义的例程和数据类型开发者指南 。