前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >类关键字ClientDataType,ClientName,CompileAfter,DdlAllowed

类关键字ClientDataType,ClientName,CompileAfter,DdlAllowed

作者头像
用户7741497
发布2022-07-06 09:57:23
1900
发布2022-07-06 09:57:23
举报
文章被收录于专栏:hml_知识记录

第十三章 类关键字 - ClientDataType

指定将此数据类型投影到客户端技术时使用的客户端数据类型。仅适用于数据类型类。

用法

要指定将此数据类型投影到客户端技术时要使用的客户端数据类型,请使用以下语法:

代码语言:javascript
复制
Class MyApp.MyString [ ClientDataType = clienttype ]  
{ //class members }

其中clienttype是下列之一:

  • BIGINT
  • BINARY
  • BINARYSTREAM
  • BOOLEAN
  • CHARACTERSTREAM
  • CURRENCY
  • DATE
  • DECIMAL
  • DOUBLE
  • FDATE
  • FTIMESTAMP
  • HANDLE
  • INTEGER
  • LIST
  • LONGVARCHAR
  • NUMERIC
  • STATUS
  • TIME
  • TIMESTAMP
  • VARCHAR (默认)

详解

此关键字指定将此类投影到客户端技术时使用的客户端数据类型。每个数据类型类都必须指定一个客户端数据类型。

对子类的影响

这个关键字是从主超类继承的。子类可以覆盖关键字的值。

默认

默认的客户端数据类型是VARCHAR

第十四章 类关键字 - ClientName

能够重写此类的客户端投影中使用的默认类名。

用法

要在将类投影到客户端时覆盖类的默认名称,请使用以下语法:

代码语言:javascript
复制
Class MyApp.MyClass [ ClientName = clientclassname ]  
{ //class members }

其中clientclassname是用作客户端名称的不带引号的字符串,而不是类名。

详解

该关键字允许在类被投影到客户端时为其定义一个替代名称(例如当使用InterSystems IRIS Java绑定时)

对子类的影响

此关键字不是继承的。

默认

如果省略此关键字,实际的类名将在客户端上使用。

第十五章 类关键字 - CompileAfter

指定此类应在其他(指定的)类之后编译。

用法

要指示类编译器应该在其他类之后编译此类,请使用以下语法:

代码语言:javascript
复制
Class MyApp.MyClass [ CompileAfter = classlist ]  
{ //class members }

其中classlist是下列之一:

  • 类名。例如:
代码语言:javascript
复制
[ CompileAfter = MyApp.Class1 ]
  • 用逗号分隔的类名列表,用括号括起来。例如:
代码语言:javascript
复制
[ CompileAfter = (MyApp.Class1,MyApp.Class2,MyApp.Class3) ]

详解

此关键字指定类编译器应该在编译指定的类后编译此类。

通常,当类之间存在编译器无法检测到的依赖关系,以致必须一个接一个地编译时,会使用此关键字。

此关键字仅影响编译顺序,不影响运行时行为。

注意:CompileAfter关键字不能确保在编译这个类之前指定的类是可运行的。

此外,CompileAfter关键字只影响与System关键字具有公共值的类。

对子类的影响

这个关键字继承自所有超类。如果子类为关键字指定了一个值,该值指定了在子类可以被编译之前必须被编译的附加类。

默认

默认情况下,不指定该关键字。

第十六章 类关键字 - DdlAllowed

指定DDL语句是否可用于更改或删除类定义。仅适用于持久类。

用法

要通过DDL修改类,请使用以下语法:

代码语言:javascript
复制
Class MyApp.Person Extends %Persistent [ DdlAllowed ]  
{ //class members }

否则,省略此关键字或使用以下语法:

代码语言:javascript
复制
Class MyApp.Person Extends %Persistent [ Not DdlAllowed ]  
{ //class members }

详情

此关键字指定是否可以使用DDL语句(如删除表、更改表、删除索引等)来更改或删除类定义。

通常,不希望让SQL用户使用DDL语句修改类。

对子类的影响

此关键字不是继承的。

默认

如果省略这个关键字,DDL语句就不能用来影响类定义。

注意

如果通过执行DDL CREATE TABLE语句来创建一个类,那么对于该类,DdlAllowed关键字最初将被设置为true

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第十三章 类关键字 - ClientDataType
  • 用法
  • 详解
  • 对子类的影响
  • 默认
  • 第十四章 类关键字 - ClientName
  • 用法
  • 详解
  • 对子类的影响
  • 默认
  • 第十五章 类关键字 - CompileAfter
  • 用法
  • 详解
  • 对子类的影响
  • 默认
  • 第十六章 类关键字 - DdlAllowed
  • 用法
  • 详情
  • 对子类的影响
  • 默认
  • 注意
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档