可以在 EGL 文件中声明类型为 sqlRecord 的记录部件,EGL 源格式对该部件作了描述。有关 EGL 如何与关系数据库进行交互的概述,请参阅 SQL 支持。
Record mySQLRecordPart type sqlRecord { tableNames = [["mySQLTable", "T1"]], keyItems = ["myHostVar01"], defaultSelectCondition = #sqlCondition{ // no space between #sqlCondition and the brace myHostVar02 = 4 -- start each SQL comment -- with a double hypen } } // The structure of an SQL record has no hierarchy 10 myHostVar01 myDataItemPart01 { column = "column01", isNullable = no, isReadOnly = no }; 10 myHostVar02 myDataItemPart02 { column = "column02", isNullable = yes, isReadOnly = no }; end
tableNames=[["\"SELECT\""]]
当那些 SQL 保留字的其中一个被用作列名时,会发生类似的情况。
列示一个或多个表名变量,它们中的每一个都包含由 SQL 记录访问的表的名称。仅在运行时才确定表的名称。
变量可以由库名限定,也可以带有下标。
如果为给定的表名变量指定一个标号,则该标号包括在与该记录相关联的缺省 SQL 语句中。
可以单独地使用表名变量,也可以将其与表名配合使用;但是,任何表名变量的使用都确保仅在运行时才确定 SQL 语句的特征。
通过在引号前面添加转义字符(\),可以将双引号(")包括在表名变量中。
隐式 SQL 语句并非存储在 EGL 源代码中。有关那些语句的概述,请参阅 SQL 支持。
相关任务
EGL 语句和命令的语法图