前页 | 后页 |
DDL函数宏
DDL功能宏提供了一种方便的方式来处理,检索或格式化与DDL生成相关的元素数据。这些宏以及代码功能宏可用于DDL模板。每个功能宏都返回一个结果字符串,并以与代码模板功能宏相同的方式使用。
此处描述了可用的功能宏。所有参数都具有String类型,并用方括号表示;即:FUNCTION_NAME([param])。
DDL_DATATYPE_SIZE([产品名称],[数据类型])
以DDL语法返回当前列的全格式数据类型。
参量
- productName-当前表分配的DBMS,例如SQL Server 2012,Oracle或PostgreSQL
- datatype-当前列的数据类型名称,例如VARCHAR或INT
在“ Enterprise Architect表”列中,数据类型是使用影响DDL语法的Length Type(0、1或2)属性定义的;构建返回值时,此函数宏会考虑长度类型(和其他因素)。
DDL_GET_DEFINITION_PARAS([定义])
从提供的函数/过程定义中返回参数的字符串表示形式。
参量
- 定义-过程/函数的完整SQL定义
某些DBMS(例如PostgreSQL)支持同一过程/函数名称的多个定义。这些定义仅在其参数列表中有所不同,因此,要操作此类对象,DDL必须指定名称和参数。此函数宏使DDL模板具有提取参数的能力,以便随后可以将其用于标识单个对象。
DDL_INCLUDE_SQLQUERY([objectName])
返回在SQLQuery对象中定义的SQL语句。
参量
- objectName-当前数据模型中定义的SQL查询对象的名称
没有。
DDL_INDEX_SORT([产品],[列])
返回给定索引的排序顺序。
参量
- 产品-DBMS(当前为Firebird)
- columns-索引中涉及的列名称的CSV
该宏当前仅适用于Firebird索引。
DDL_RESOLVE_NAME([产品名称],[名称],[leftSurround],[rightSurround])
如果名称是当前DBMS的保留字,则返回提供的名称(用左,右字符分隔)。
参量
- productName-当前表分配的DBMS,例如SQL Server 2012,Oracle或PostgreSQL
- name-对象/列名称
- leftSurround-用于包围名称的货币对的左字符;例如,单引号{'}
- rightSurround-用来包围名字的一对右字符;例如,单引号{'}
某些DBMS的DDL语法要求保留字的名称以不同的方式分隔;此函数宏可用于安全地格式化DB2和Firebird的所有名称。
DDL_TABLE_TAGVALUE([tagName])
返回当前表的存储库版本中提供的标记名称的值。
参量
- tagName-要检索的标签项的名称
没有。
EXECUTE_CURRENT([objectName],[actionName],[priority])
将当前模板的返回字符串添加到执行引擎的执行队列中。
参量
- objectName-将在执行队列的“对象”列中显示的值,该值指示要更新的对象的名称
- actionName-将在执行队列的“ Action”列中显示的值,该值指示导致生成此语句的操作
- 优先级-表示语句优先级的数值;数字越大,则语句在队列中的位置越低
可以在整个模板的任何位置调用此函数宏,但是直到最后才执行。模板完成后,将其生成的DDL发送到执行队列。
如果用户选择为文件生成DDL,则此功能宏无效。
EXECUTE_STRING([objectName],[actionName],[priority],[ddlStatement])
将提供的DDL语句添加到执行引擎的执行队列中。
参量
- objectName-将在执行队列的“对象”列中显示的值,该值指示要更新的对象的名称
- actionName-将在执行队列的“ Action”列中显示的值,该值指示导致生成此语句的操作
- 优先级-表示语句优先级的数值;数字越大,则语句在队列中的位置越低
- ddlStatement-执行所需操作的单个DDL语句
如果用户选择为文件生成DDL,则此功能宏无效。
EXIST_STRING([ddlStatement])
在执行引擎的执行队列中搜索提供的DDL语句,如果找到该语句,则返回“ T”。
参量
- ddlStatement-单个DDL语句
没有。
GET_FIRST_SQL_KEYWORD([声明])
返回提供的SQL语句的第一个关键字。
参量
- 语句-SQL语句
没有。
ODBC_TABLE_TAGVALUE([tagName])
返回当前表的实时数据库版本中提供的标签名称的值。
参量
- tagName-要检索的标签项的名称
没有。
PROCESS_DDL_SCRIPT([类型],[参数2],[参数3],[参数4])
泛型函数宏,用于返回特定用途的格式化字符串。
参量
- 类型-指定要采取的特殊措施
- parameter2-通用参数2,每种类型的用途不同
- parameter3-通用参数3,每种类型的用途不同
- parameter4-通用参数4,每种类型的用途不同
对于Oracle同义词,请使用以下参数:
- 类型=“ SYNONYMS”
- parameter2 =表名;例如,TBL_EMPLOYEES
- parameter3 =分隔的值字符串,用分号分隔,指定同义词所有者和名称,并在其之间使用全冒号;例如OE:EMPLOYEES; PUBLIC:PUB_EMPLOYEES;
- parameter4 =语句终止符
格式:
为TBL_EMPLOYEES创建SYNONYM OE.EMPLOYEES;
为TBL_EMPLOYEES创建公共SYNUYM PUB_EMPLOYEES;
REMOVE_LAST_SEPARATOR([ddlStatement],[separator])
返回提供的DDL语句,其中最后一个分隔符已删除(如果存在)。
参量
- ddlStatement-部分DDL语句
- 分隔符-应该删除的分隔符
在构建表示DDL语句的字符串时,通常的做法是在每个项目后附加分隔符;但是,在最后一项之后不需要分隔符,因此提供了此功能宏以删除结尾的分隔符。
REMOVE_STRING([ddlStatement])
从执行引擎的执行队列中删除提供的DDL语句。
参量
- ddlStatement-单个DDL语句
没有。
SUPPRESS_EXECUTE_CURRENT([布尔值])
一个函数宏,用于启用/禁用对EXECUTE_CURRENT的后续调用。
参量
- 布尔值-对或错
该标志的默认状态为False;否则为false。也就是说,不会忽略对EXECUTE_CURRENT的调用。