当前位置:网站首页>属性关键字ServerOnly,SqlColumnNumber,SqlComputeCode,SqlComputed
属性关键字ServerOnly,SqlColumnNumber,SqlComputeCode,SqlComputed
2022-07-07 12:38:00 【用户7741497】
第109章 属性关键字 - ServerOnly
指定是否将此属性投影到Java
客户机。
用法
要指定属性是否被投影到Java
客户端,请使用以下语法:
Property name As classname [ ServerOnly = n ];
其中n
是下列之一:
0
表示此属性是投影的。1
表示不投影该属性。
详解
此关键字指定属性是否被投影到Java
客户端。
默认
如果省略此关键字,属性将被投影。
第110章 属性关键字 - SqlColumnNumber
指定此属性的SQL列号。仅适用于持久类。
用法
要指定属性的SQL列号,请使用以下语法:
Property name As classname [ SqlColumnNumber = 4 ];
其中n是正整数。
详解
此关键字允许显式设置此属性的SQL
列号。这是为了支持传统应用程序而提供的。
默认
默认值为空字符串。
第111章 属性关键字 - SqlComputeCode
指定设置此属性值的代码。
用法
要指定属性的计算方式,请使用以下语法:
Property name As classname [ SqlComputeCode = { Set {FieldName} = Expression }, SqlComputed ];
FieldName
—正在定义的属性的SQL字段名称。Expression
—对象指定属性值的脚本表达式。
详解
如果指定了这个关键字(如果SqlComputed
为真),那么这个属性就是一个计算属性。
对于此关键字的值,请根据以下规则指定(在大括号中)一行设置属性值的对象脚本代码:
- 若要引用此属性,请使用
{*}
或者,如果没有为属性指定SqlFieldName
关键字,请使用{propertyname}
,其中propertyname
是属性名称。如果为属性指定了SqlFieldName
关键字,请使用{sqlfieldnamevalue}
,其中sqlfieldnamevalue
是该关键字的值。
请注意,SqlFieldName
对所有对象类都可用,尽管它只对持久类有用。
- 同样,要引用另一个属性,如果没有为该属性指定
SqlFieldName
关键字,请使用{propertyname}
,其中propertyname
是属性名称。如果为属性指定了SqlFieldName
关键字,请使用{sqlfieldnamevalue}
,其中sqlfieldnamevalue
是该关键字的值。 - 如果需要,代码可以包含多个
Set
命令。等号前后允许有空格,尽管每个完整的Set
语句必须出现在一行中。 - 代码可以通过通常的完整语法引用类方法、例程或子例程。同样,它可以使用ObjectScript函数和运算符。
- 代码可以包含嵌入式SQL。
- 代码可以包括以下伪字段引用变量,这些变量在类编译时被转换为特定的值:
{%%CLASSNAME}
和{%%CLASSNAMEQ}
都转换为投影了SQL表定义的类的名称。{%%CLASSNAME}
返回不带引号的字符串,{%%CLASSNAMEQ}
返回带引号的字符串。{%%TABLENAME}
转换为表的完全限定名,以带引号的字符串形式返回。{%%ID}
转换为RowID
名称。当不知道RowID
字段的名称时,此引用非常有用。
- 代码不能使用表单的语法
..propertyname
或..methodname()
例如:
Property TestProp As %String [ SqlComputeCode = {set {*} = {OtherField}}, SqlComputed ];
再举一个例子:
Property FullName As %String [ SqlComputeCode = {set {*}={FirstName}_" "_{LastName}}, SqlComputed ];
代码是用Do命令调用的。
重要提示:
- 如果打算索引此字段,请使用确定性代码,而不是不确定性代码。 IRIS无法对不确定代码的结果维护索引,因为不可能可靠地删除过时的索引键值。(当传递相同的参数时,确定性代码每次都返回相同的值。例如,返回
h`是在函数控制之外修改的。)
SqlComputeCode
中使用的任何用户变量在使用前都应该是新的。这防止了与相关代码中其他地方同名变量的任何冲突。
默认
默认值为空字符串。
第112章 属性关键字 - SqlComputed
指定这是否是计算属性。
用法
要指定计算此属性,请使用以下语法:
Property name As classname [ SqlComputeCode = sqlcomputecode, SqlComputed ];
其中sqlcomputecode
在SqlComputeCode
中描述。
否则,省略此关键字或将单词Not放在关键字的前面。
详解
如果此关键字为真(并且属性还指定了SqlComputeCode
),则此属性是计算属性。
如果一个属性具有SqlComputed
关键字的值, IRIS将使用该值来计算该属性。具体来说,从SqlComputeCode
生成了一个新的类方法<property>Compute
。从属性的<property>Get
方法调用此方法。如果属性还指定了SqlComputeOnChange
关键字,则在指定的时间调用<property>Compute
方法。
该功能在<property>Get
和<property>Set
方法中实现。如果重写这些方法中的任何一个,则属性计算不起作用,除非重写的方法实现中有触发计算的规定。
边栏推荐
- 找到自己的价值
- Substance Painter笔记:多显示器且多分辨率显示器时的设置
- Excuse me, when using Flink SQL sink data to Kafka, the execution is successful, but there is no number in Kafka
- Multi merchant mall system function disassembly lecture 01 - Product Architecture
- Excuse me, I have three partitions in Kafka, and the flinksql task has written the join operation. How can I give the join operation alone
- Introduction to sakt method
- [network security] SQL injection syntax summary
- 课设之百万数据文档存取
- 請問,在使用flink sql sink數據到kafka的時候出現執行成功,但是kafka裏面沒有數
- 【AI实战】应用xgboost.XGBRegressor搭建空气质量预测模型(二)
猜你喜欢
Multi merchant mall system function disassembly lecture 01 - Product Architecture
GAN发明者Ian Goodfellow正式加入DeepMind,任Research Scientist
2022pagc Golden Sail award | rongyun won the "outstanding product technology service provider of the year"
数据流图,数据字典
Assign a dynamic value to the background color of DataGrid through ivalueconverter
UML 顺序图(时序图)
低代码平台中的数据连接方式(下)
MRS离线数据分析:通过Flink作业处理OBS数据
数据湖(九):Iceberg特点详述和数据类型
Démontage de la fonction du système multi - Merchant Mall 01 - architecture du produit
随机推荐
The longest ascending subsequence model acwing 482 Chorus formation
OAuth 2.0 + JWT protect API security
Substance painter notes: settings for multi display and multi-resolution displays
最长上升子序列模型 AcWing 1012. 友好城市
Realization of search box effect [daily question]
Environment configuration
Wired network IP address of VMware shared host
Simple use of websocket
【立体匹配论文阅读】【三】INTS
2022PAGC 金帆奖 | 融云荣膺「年度杰出产品技术服务商」
Excusez - moi, l'exécution a été réussie lors de l'utilisation des données de puits SQL Flink à Kafka, mais il n'y a pas de nombre dans Kafka
常用數字信號編碼之反向不歸零碼碼、曼徹斯特編碼、差分曼徹斯特編碼
Excuse me, does PTS have a good plan for database pressure measurement?
【愚公系列】2022年7月 Go教学课程 005-变量
Substance Painter筆記:多顯示器且多分辨率顯示器時的設置
数据流图,数据字典
MRS离线数据分析:通过Flink作业处理OBS数据
常用数字信号编码之反向不归零码码、曼彻斯特编码、差分曼彻斯特编码
leetcode:648. 单词替换【字典树板子 + 寻找若干前缀中的最短符合前缀】
Vscode configuration uses pylint syntax checker