百讲知识点索引
百讲知识点索引
简介
- B站已更新截止到
2023.12.31
之前的所有百讲课程,总计261
讲。 - 什么是百讲?百讲是一个主要介绍
IRIS
、Cache
编程知识的免费课程。 - 课程的特点是,将每一个知识点,都会用示例演示出来、了解原理,而不是仅仅告诉有这个功能。
- 每周一期,每期会请到有多年开发经验的老师来给大家讲解课程。
- 百讲观看地址:https://www.bilibili.com/video/BV1cw41147xr/
知识点索引
-
第
1
讲IRIS
ObjectScript
简介ObjectScript
特点
-
第
2
讲 初识ObjectScript
程序- 概述
- 变量
- 支持几种变量
- 表达式
- 函数
-
第
3
讲 语法规则- 区分大小写
- 空格
- 不需要空格
- 需要空格
- 注释
- 字面常量
- 标识符
- 标签
-
第
4
讲 数据类型 - 字符串 -
第
5
讲 数据类型 - 位串 -
第
6
讲 数据类型 - 数字- 数字字符串
- 科学记数法
- 符号配置
- 规范数字
- 混合数字
- 小数
- 最大数
-
第
7
讲 数据类型 - 对象 -
第
8
讲 数据类型 - 布尔 -
第
9
讲 数据类型 - 日期 -
第
10
讲 变量- 局部变量
- 百分比变量
ProcedureBlock
使用- 进程私有
Global
- 使用
^GETPPGINFO
- 全局变量
Global
- 数组变量
- 变量类型和转换
- 使用#Dim定义变量类型
-
第
11
讲 运算符 - 逻辑运算符- 运算符符号表
- 运算符优先级
- 逻辑比较运算符
- 逻辑表达式
Not
运算符('
)
-
第
12
讲 运算符 - 算术运算符- 一元运算符
- 加法运算符(
+
) - 减法运算符(
-
) - 乘法运算符(
*
) - 除法运算符(
/
) - 求幂运算符(
**
) - 整除运算符(
\
) - 取余运算符(
#
)
-
第
13
讲 关系运算符- 数值关系运算符
- 小于
<
- 大于
>
- 大于等于
>=
- 小于等于
<=
- 字符串关系运算符
- 等于
=
- 不等于
'=
- 包含
[
- 不包含
'[
- 跟随
]
- 不跟随
']
- 排序
]]
- 非排序
']]
-
第
14
讲 运算符 - 模式匹配- 模式代码
- 模式可以出现的次数
- 多组模式
- 组合模式
- 交替模式
- 使用不完整的模式
- 多重模式解释
- 非模式匹配运算符
- 模式复杂性
-
第
15
讲 运算符 - 间接寻址- 名称间接寻址
- 模式匹配间接寻址
- 参数间接寻址
- 下标间接寻址
$TEXT
参数间接寻址
-
第
16
讲 命令梗概- 通用概念
- 命令后置条件表达式
-
第
17
讲 命令 - 赋值命令Set
命令Kill
命令- 使用参数传递对
KILL
影响
- 使用参数传递对
Zkill
命令New
命令Merge
命令
-
第
18
讲 命令 - 条件命令if
,elseif
,else
命令IF
中使用QUIT
IF
中使用GOTO
-
第
19
讲 命令 - 循环命令For
命令while
命令Do While
命令
-
第
20
讲 命令 - 退出命令Continue
命令Quit
命令Retrun
命令
-
第
21
讲 命令 - 输出命令WRITE
命令- 有参数
WRITE
- 无参数
WRITE
- 有参数
ZWRITE
命令ZZDUMP
命令ZZWRITE
命令WRITE
,ZWRITE
,ZZDUMP
,ZZWRITE
异同
-
第
22
讲 命令 - 调用命令Do
命令
-
第
23
讲 命令 - 调用命令 -JOB
-
第
24
讲 命令 - 调用命令 -JOB
- 使用多进程 -
第
25
讲 命令 - 调用命令 -JOB
- 消息队列 -
第
26
讲 命令 - 调用命令 -XECUTE
命令 -
第
27
讲 命令 - 调用命令 -GOTO
命令 -
第
28
讲 方法 - 方法概念Routines
Subroutines
Functions
Label
Procedures
Methods
ClassMethods
SystemFunctions
Program
- 简单区别
-
第
29
讲 参数 - 参数传递- 按值传递
- 按引用传递
- 可变参数
-
第
30
讲 嵌入式代码- 嵌入式
HTML
&html
标记语法- 嵌入式
JavaScript
- 嵌入式
SQL
- 嵌入式
-
第
31
讲 多维数组- 什么是多维数组
- 多维树形结构
- 稀疏多维存储
- 多维数组的设置
- 操作多维数组
- 多维数组,进程全局变量,全局变量效率对比
-
第
32
讲 系统函数梗概 -
第
33
讲 分隔函数$PIECE
- 两种用法
- 使用
SET $PIECE
替换子字符串
-
第
34
讲 截取函数$EXTRACT
- 两种用法
- 使用
SET $EXTRACT
替换子字符串 DTM
模式下的$EXTRACT
-
第
35
讲 长度函数$LENGTH
,对齐函数$JUSTIFY
,查找函数$FIND
,反转函数$REVERSE
-
第
36
讲 转换函数$ZCONVERT
-
第
37
讲 替换函数$REPLACE
,$TRANSLATE
,$CHANGE
- 比较
$CHANGE
,$REPLACE
,$TRANSLATE
函数
- 比较
-
第
38
讲 数组函数 -$LISTBUILD
SET $LISTBUILD
-
第
39
讲 数组函数 -$LIST
$List
错误情况- 使用
SET $LIST
替换元素
-
第
40
讲$LIST
与$EXTRACT
和$PIECE
区别 -
第
41
讲 数组函数 -$LISTDATA
-
第
42
讲 数组函数 -$LISTFIND
-
第
43
讲 数组函数 -$LISTGET
-
第
44
讲 数组函数 -$LISTLENGTH
-
第
45
讲 数组函数 -$LISTNEXT
-
第
46
讲 效率 - 对比遍历取值$LISTDATA
,$LIST
,$LISTGET
,$LISTNEXT
-
第
47
讲 数组函数 -$LISTSAME
-
第
48
讲 数组函数 -$LISTFROMSTRING
,$LISTTOSTRING
-
第
49
讲 数组函数 -$LISTUPDATE
-
第
50
讲 数组函数 -$LISTVALID
-
第
51
讲 示例 - 结合所有列表函数 - 总结 -
第
52
讲 正则表达式- 通配符
- 限定符
- 字符组区间
- 特殊字符
- 取反
- 单字母字符类型
- 字词边界
- 字符串开始或结束
- 分组
-
第
53
讲 正则表达式函数 -$MATCH
Unicode
属性字符类型POSIX
字符类型- 分组构造
- 字符边界
- 十六进制表示法
- 八进制表示法
Unicode
表示法- 汉字
Unicode
编码范围
- 汉字
- 控制字符表示法
- 符号表示法
- 模式
Case
模式- 单行模式
- 文本模式
- 注解
- 行内注释
- 行末注释
- 错误信息
-
第
54
讲 正则表达式函数 -$LOCATE
-
第
55
讲 正则表达式函数 -$ZSTRIP
-
第
56
讲 正则表达式类 -%Regex.Matcher
-
第
57
讲 对比MATCH
、LOCATE
、ZSTRIP
、%Regex.Matcher
异同 -
第
58
讲 什么是宏?宏的简单使用- 什么是宏?
- 宏命名规范
- 宏的空格规范
- 宏的简单使用
-
第
59
讲 .inc文件的使用- 如何创建
inc
文件 - 如何引用外部宏
- 如何创建
-
第
60
讲 宏预处理器 - 定义指令 -#Def1Arg
、#Define
、#Dim
、##Continue
-
第
61
讲 宏预处理器 - 条件指令 -#If
、#ElseIf
、#Else
、#EndIf
、#IfDef
、#IfNDef
、#UnDef
-
第
62
讲 宏预处理器 - 编译指令 -#Execute
、##Expression
、##SafeExpression
、##Function
、##Lit
- 异同
-
第
63
讲 宏预处理器 -SQL
指令 -#Import
、#SQLCompile Audit
、#SQLCompile Mode
、#SQLCompile Path
、#SQLCompile Select
、##SQL
#Import
和#SQLCompile
区别
-
第
64
讲 宏预处理器 - 其他指令 -#Include
、#Show
、#NoShow
、#;
、##;
、##Quote
、##Unique
-
第
65
讲 使用系统宏%occStatus.inc
内的宏
-
第
66
讲 如何使用%Status
数据类型 -
第
67
讲 锁 -LOCK
命令- 什么是锁?
- 怎么实现这个锁?
- 锁的分类
- LOCK 命令
- 参数
-
第
68
讲 锁 -LOCK
命令的两种基本形式LOCK
命令的两种基本形式- 不带参数的锁
- 有参数锁
-
第
69
讲 锁 - 独占锁 -
第
70
讲 锁 - 共享锁 -
第
71
讲 锁 - 升级锁 -
第
72
讲 锁 - 立即解锁 -
第
73
讲 锁 - 延迟解锁 -
第
74
讲 锁 - 增量锁 -
第
75
讲 锁 - 锁类型总结 -
第
76
讲 锁 -^$LOCK
结构化系统变量 -
第
77
讲 锁 - 使用Portal
管理锁- 查看锁表
- 使用锁表删除锁
- 其他方式删除锁
-
第
78
讲 锁 - 使用^LOCKTAB
实用程序- 输入
"?"
,显示帮助信息: - 使用命令
D
删除一个锁。 - 使用命令
J
删除进程中的所有锁。 - 使用命令
C
删除系统中的所有锁。 - 使用命令
A
删除所有锁。
- 输入
-
第
79
讲 锁 - 等待锁- 多进程父子节点加锁
- 多进程父子节点加锁顺序
-
第
80
讲 锁 - 死锁- 什么是死锁
- 死锁
- 预防死锁
- 解决死锁
-
第
81
讲 锁 - 注意点总结 -
第
82
讲 代码规范 - 变量 -
第
83
讲 代码规范 - 方法 -
第
84
讲 代码规范 - 类 -
第
85
讲 代码规范 - 锁 -
第
86
讲 代码规范 - 事务 -
第
87
讲 代码规范 - 陷阱 -
第
88
讲 代码规范 - 空行 -
第
89
讲 代码规范 - 格式 -
第
90
讲 代码规范 - 注释 -
第
91
讲 事务 - 什么是事务? 事务的特性- 什么是事务?
- 事务的特性
- 事务嵌套的层数
- 事务与日志的同步提交
-
第
92
讲 事务 - 事务命令TSTART
TCOMMIT
TROLLBACK
- 回滚错误
<ROLLFAIL>
的几种情况 SQL
命令与ObjectScript
命令对照
-
第
93
讲 事务 - 什么可回滚,什么不可回滚?- 事务不可回滚
- 事务锁
-
第
94
讲 事务 -SQL
事务命令SET TRANSACTION
START TRANSACTION
COMMIT
ROLLBACK
SAVEPOINT
%INTRANSACTION
-
第
95
讲 事务 -$TLEVEL
变量Terminal
显示事务层数SQL
命令和$TLEVEL
-
第
96
讲 事务 - 嵌套事务的几种情况 -
第
97
讲 事务 - 事务使用的基本示例 -
第
98
讲 事务 - 事务提交方式IMPLICIT
显式事务(自动事务)EXPLICIT
隐式事务(关闭自动事务)NONE
没有自动事务处理
-
第
99
讲 事务 - 并发事务带来的问题 - 脏读 -
第
100
讲 事务 - 并发事务带来的问题 - 丢失更新 -
第
101
讲 事务 - 并发事务带来的问题 - 不可重复读 -
第
102
讲 事务 - 并发事务带来的问题 - 幻读 -
第
103
讲 事务 - 并发事务带来的问题总结- 通俗解释
- 不可重复读和脏读、幻读的区别
- 不可重复读和脏读的区别
- 不可重复读和幻读区别
-
第
104
讲 事务 - 隔离级别 -READ UNCOMMITTED
READ UNCOMMITTED
(读取未提交数据)
-
第
105
讲 事务 - 隔离级别 - READ COMMITTEDREAD COMMITTED
(读取已提交数据)
-
第
106
讲 事务 - 隔离级别 - REPEATABLE READREPEATABLE READ
(可重复读)
-
第
107
讲 事务 - 隔离级别 -SERIALIZABLE
SERIALIZABLE
(可串行化)
-
第
108
讲 事务 - 隔离级别 - 总结SNAPSHOT
:快照- 数据库隔离级别总结
- 实现事务隔离级别时加锁原理总结
-
第
109
讲 事务 - 查看事务日志 - 增删改对日志的影响- 查看日志
- 在日志中查看
INSERT
数据 - 在日志中查看
UPDATE
数据 - 在日志中查看
DELETE
数据 - 在日志中查看声明的事务
- 在日志中查看嵌套事务
-
第
110
讲 事务 - 通过日志恢复被删除的数据- 模拟删表操作
- 如何恢复数据
-
第
111
讲 事务 - 开放性事务原理以及如何检测开放性事务- 问题
- 定义
- 模拟开放性事务
- 开放性事务状态
- 发生开放性事务的几种可能
- 开放性事务能带来哪些问题
- 如何判断开放性事务
- 如何解决开放性事务
-
第
112
讲 错误处理 -TRY
命令TRY - CATCH
机制
-
第
113
讲 错误处理 -CATCH
命令CATCH
命令有两种形式- 有参数
CATCH
- 无参数
CATCH
- 有参数
-
第
114
讲 错误处理 -THROW
命令- 有参数
THROW
- 无参数
THROW
- 有参数
-
第
115
讲 错误处理 -ZTRAP
命令 -
第
116
讲 错误处理 -$ZTRAP
变量 -
第
117
讲 错误处理 - 错误处理的工作机制原理 -
第
118
讲 错误处理 -$ETRAP
变量 -
第
119
讲 错误处理 -$ZERROR
变量以及常见错误类型- 显示
$ze
格式错误 - 错误的附加信息
- 显示
-
第
120
讲 错误处理 -$ECODE
变量 -
第
121
讲 错误处理 -$THROWOBJ
变量 -
第
122
讲 错误处理 -TRY - CATCH
,$ZTRAP
,$ETRAP
区别与错误处理工具推荐 -
第
123
讲 错误处理 - 堆栈 -$STACK
变量 -
第
124
讲 错误处理 - 堆栈 -$ESTACK
变量 -
第
125
讲 错误处理 - 堆栈 -$STACK
函数$STACK
的单参数形式$STACK
的两个参数形式
-
第
126
讲 错误处理 - 堆栈 - 手写记录错误堆栈调用信息 -
第
127
讲 错误处理 - 堆栈 -Terminal
中显示程序堆栈信息Terminal
字母代码
-
第
128
讲 错误处理 - 堆栈 -%Stack
实用程序 -
第
129
讲 错误处理 - 使用系统日志并查看错误堆栈信息 -
第
130
讲 错误处理 - 使用%ERN
查看应用程序错误日志 -
第
131
讲 错误处理 - 常见的返回值错误处理- 用分隔符返回错误代码与描述信息。常见的分隔符
^
、,
等。- 将
JSON
处理错误方式返回。 %Status
方式返回。SQLCODE
方式返回错误。
- 将
- 用分隔符返回错误代码与描述信息。常见的分隔符
-
第
132
讲 错误处理 - 手写通用错误异常处理方式,包含日志,堆栈。$Ztrap
与Try-Catch
双保险方式捕捉异常- 原理
$Ztrap
方式捕捉ZTrap
抛出异常
-
第
133
讲 调试 -BREAK
命令 - 基本使用BREAK
命令有三种形式- 无参
BREAK
-
第
134
讲 调试 -BREAK
命令 - 逐步逐行调试BREAK Extended
参数以设置常规断点
-
第
135
讲 调试 -BREAK
命令 - 中断运行中的程序Flag
参数
-
第
136
讲 调试 -ZBREAK
命令 - 基本使用- 基本语法
ZBREAK
帮助文档- 无参数
ZBREAK
BREAK
与ZBREAK
的区别
-
第
137
讲 调试 -ZBREAK
命令 - 使用断点和监视点- 建立断点和监视点
action
参数值
-
第
138
讲 调试 -ZBREAK
命令 - 跟踪并输出监视变量值- 跟踪并输出监视变量值
-
第
139
讲 调试 -ZBREAK
命令 - 将调试信息输出到日志txt
- 将调试信息输出到日志
txt
- 将调试信息输出到日志
-
第
140
讲 调试 - 使用Stuido
调试 -
第
141
讲 调试 - 使用监视窗口与监视点- 调试菜单
- 监视窗口
- 监视点
-
第
142
讲 调试 - 根据进程调试 -
第
143
讲 调试 - 调试CSP
页面 -
第
144
讲 - 类 - 包 - 定义- 概念
- 定义包
- 注意事项
-
第
145
讲 - 类 - 包 - 包映射- 映射通用包
-
第
146
讲 - 类 - 包 - 使用包- 在类中引用包
- 导入包
ObjectScript
方法中引入包
-
第
147
讲 类 - 参数 - 定义使用类参数- 概念
- 使用场景
- 定义参数
- 使用参数值
-
第
148
讲 类 - 参数 - 类参数类型- 运行时计算的类参数
- 编译时计算的类参数
-
第
149
讲 类 - 参数 - 运行时更改类参数值与参数关键字- 在运行时更改类参数
- 参数关键字
-
第
150
讲 类 - 方法 - 定义方法- 概念
- 类别
- 定义方法
- 方法参数
-
.第
151
讲 类 - 方法 - 使用类方法与实例方法 -
第
152
讲 类 - 方法 - 方法关键字- 方法关键字列表
- 关键字
Language
- 指定实现语言 - 关键字
CodeMode
- 方法实现方式 - 关键字
SqlProc
- 将方法映射为存储过程 - 关键字
SqlName
- 自定义存储过程名称 - 关键字
Abstract
- 抽象方法 - 关键字
Final
- 指定方法为最终方法 - 关键字
Private
- 指定方法为私有方法
-
第
153
讲 方法生成器 - 原理 -
第
154
讲 方法生成器 - 可用对象简介与示例- 方法生成器可用对象
- 定义方法生成器示例
-
第
155
讲 方法生成器 - 父子类中的区别- 方法生成器在父子类中的区别
-
第
156
讲 类 - 对象 -%RegisteredObject
类- 对象类
OREF
-
第
157
讲 类 - 对象 -%RegisteredObject
类常用方法 -
第
158
讲 类 - 对象 - 继承与父类类型转换 -
第
159
讲 类 - 属性 - 简介- 定义属性
- 使用对象属性
i%PropertyName
(实例变量)
-
第
160
讲 类 - 属性 - 常用关键字- 属性关键字列表
InitialExpression
关键字 - 设置属性定义初始值Required
关键字 - 设置属性字段不能为null
MultiDimensional
- 关键字定义多维属性Aliases
- 为属性指定别名ReadOnly
- 指定属性为只读
-
第
161
讲 类 - 属性 - 计算属性SqlComputed
关键字与SqlComputeCode
关键字SqlColumnNumber
关键字设置属性的SQL
列号SqlFieldName
设置SQL
字段名- 使用关键字定义计算代码
- 使用回调方法定义计算代码
SqlComputeOnChange
关键字Transient
关键字Calculated
关键字
-
第
162
讲 类 - 属性 - 属性访问器- 设置属性访问器
- 通过
IDE
创建属性访问器 - 重写属性获取器方法
- 对象属性的属性访问器
PropGetStored()
方法 - 直接从磁盘加载数据- 测试效率对比
-
第
163
讲 类 - 数据类型类 - 简介- 数据类型类的类型
- 数据类型类的功能
- 数据类型类的区别
- 常用的数据格式类型
-
第
164
讲 类 - 数据类型类 - 常用数据类型与映射- 什么是
ODBC
,JDBC
- 常用数据类型类
- 常用数据类型映射
- 按
SqlCategory
映射数据类型类 - 按
OdbcType
映射数据类型类 - 按
ClientDataType
分组的数据类型类
- 什么是
-
第
165
讲 类 - 数据类型 - 属性方法- 使用属性方法
-
第
166
讲 类 - 数据类型 - 数据类型参数- 数据类型参数
- 常用数据类型类可使用参数
- 使用参数
- 参数使用示例
-
第
167
讲 类 - 数据类型 - 自定义数据类型类 -
第
168
讲 类 -%Persistent
- 持久类简介与定义- 简介
- 定义持久类
- 包映射模式
- 持久类与
SQL
映射关系 - 保存对象标识符:
ID
和OID
- 持久类成员
-
第
169
讲 类 -%Persistent
-Storage
定义与Storage
类%Storage.Persistent
存储类%Storage.SQL
存储类%Storage.Persistent
与%Storage.SQL
区别- 注意事项
-
第
170
讲 类 -%Persistent
-Global
使用 -
第
171
讲 类 -%Persistent
- 生成ID相关事项 -
第
172
讲 类 -%Persistent
- 哈希Global
-
第
173
讲 类 -%Persistent
- 子类拓展使用- 持久类子类数据存储情况
- 父子类均为持久类
- 父类
NoExtent
子类持久类
- 持久类子类数据存储情况
-
第
174
讲 类 -%Persistent
- 常用关键字SqlTableName
关键字 - 设置表名称SqlRowIdName
关键字 - 设置ID
列名称SqlRowIdPrivate
关键字 - 隐藏ID
列StorageStrategy
关键字 - 指定Storage
DdlAllowed
关键字 - 指定是否可以使用DDL
语句
-
第
175
讲 类 -%Persistent
- 持久类常用方法%Save()
- 保存对象%Save()
方法执行逻辑详解%Save()
回滚%Save()
事务%Id()
- 返回持久对象ID
%Oid()
- 返回持久对象OID
%ExistsId()
- 测试持久对象ID
是否存在%OpenId
- 打开保存的对象- 多次调用相同ID的
%OpenId()
情况分析 %Reload()
- 重新加载对象%DeleteId()
- 根据ID
删除保存的对象%Delete()
根据OID
删除保存的对象%DeleteExtent()
- 删除所有保存的对象%KillExtent()
- 强制删除该表数据READONLY
参数 - 指定数据库为只读
-
第
176
讲 类 -%Persistent
-Swizzling
Swizzling
- 懒加载、交错存储、重组存储
-
第
177
讲 类 -%Persistent
-Extent
查询 -
第
178
讲 类 -%Persistent
- 并发分析- 为什么使用并发参数
- 设置并发的几种方式
- 可以用的并发值
concurrency
设置为0
- 无锁。concurrency
设置为1
- 保存后获取独占锁。concurrency
设置为2
- 与1
相同concurrency
设置为3
- 总是获取共享锁。concurrency
设置为4
- 总是获取独占锁。
- 通过
$system.OBJ.SetConcurrencyMode
设置当前进程并发值 - 并发参数的代替方法
-
第
179
讲 类 -%Persistent
- 使用列存储 -
第
180
讲 类 - 集合 - 简介- 集合的类型
- 集合属性
- 独立集合
-
第
181
讲 类 - 集合 - 使用列表集合- 使用列表
List
集合
- 使用列表
-
第
182
讲 类 - 集合 - 使用数组集合- 使用数组
Array
集合
- 使用数组
-
第
183
讲 类 - 集合 - 在持久类中使用基础数据列表- 持久类中集合属性的
SQL
映射 - 使用基础数据
list
列表
- 持久类中集合属性的
-
第
184
讲 类 - 集合 - 在持久类中使用对象列表- 使用对象
list
列表
- 使用对象
-
第
185
讲 类 - 集合 - 在持久类中使用序列化列表- 使用序列化
list
列表
- 使用序列化
-
第
186
讲 类 - 集合 - 在持久类中使用基础数据数组- 使用基础数据
array
数组
- 使用基础数据
-
第
187
讲 类 - 集合 - 在持久类中使用对象数组- 使用对象
array
数组
- 使用对象
-
第
188
讲 类 - 集合 - 在持久类中使用序列化数组- 使用序列化
array
数组
- 使用序列化
-
第
189
讲 类 - 集合 - 集合属性参数- 集合属性参数
STORAGEDEFAULT
参数SQLTABLENAME
参数SQLPROJECTION
参数
- 集合属性参数
-
第
190
讲 流 - 简介- 常用流对象
- 二进制流和文本流的区别
-
第
191
讲 流 - 在持久类中使用流属性 -
第
192
讲 流 - 常用方法和属性-
%Stream
- 流常用方法和属性Read()
- 从流的当前位置开始读取指定数量的字符。Write()
- 从当前位置开始,将数据追加到流中。如果位置未设置为流的末尾,则覆盖现有数据。Rewind()
- 移至流的开头。NewFileName()
- 为%Stream.FileCharacter
或%Stream.FileBinary
属性指定文件名。
-
常用的属性
AtEnd
- 当读取遇到数据源的末尾时,设置为true
。Id
- 在%Location
指定的范围内,流实例的唯一标识符。Size
- 流的当前大小(以字节或字符为单位,取决于流的类型)。
-
-
第
193
讲 流 - 流中指定编码格式TranslateTable
- 指定读取或写入%Stream.FileCharacter
流的字符集编码类型。Filename
-%Stream.FileBinary
流当前使用的文件名,文件名包含路径+文件名。
-
第
194
讲 流 - 复制视频文件CopyFrom()
- 所有流都包含一个CopyFrom()
方法,该方法复制一个流填充到另一流。LinkToFile()
- 类似于Filename
属性,将文件流连接到名为Filename
的文件。如果指定的文件不存在,则在%Save()
后创建。
-
第
195
讲 流 - 在已有文件中追加数据MoveToEnd()
- 移动到流的末尾。%Save()
- 当将流类用作独立对象时,使用%Save()
方法来保存流数据。
-
第
196
讲 流 - 使用gzip
压缩文件 -
第
197
讲 流 - 通过嵌入式对象写入流- 通过嵌入式
SQL
读取流 - 通过嵌入式
SQL
写入流
- 通过嵌入式
-
第
198
讲 流 - 使用压缩流 -
第
199
讲%SerialObject
- 序列化对象简介- 对象组合
-
第
200
讲%SerialObject
- 序列化对象使用- 定义序列化对象
- 使用序列化类
-
第
201
讲 类 -XData
- 介绍使用- 结构
- 关键字
- 使用
XData
XML
示例JSON
示例YAML
示例
-
第
202
讲 类 -Projection
映射 - 介绍使用- 使用类映射
-
第
203
讲 类 - 关系 - 简介- 类型
- 定义关系
- 关系属性如何保存
-
第
204
讲 类 - 关系 - 定义一对多关系 -
第
205
讲 类 - 关系 - 删除一对多关系 -
第
206
讲 类 - 关系 - 使用关键字OnDelete
-
第
207
讲 类 - 关系 - 定义主子关系 -
第
208
讲 类 - 关系 - 删除主子关系 -
第
209
讲 类 - 关系 - 在SQL
查询中使用关系 -
第
210
讲 类 - 关系 - 使用关系定义多对多关系 -
第
211
讲 类 - 关系 - 使用外键定义多对多关系 -
第
212
讲Query
- 简介与基本使用 -
第
213
讲Query
- 自定义Query
基本使用 -
第
214
讲Query
- 通过%SQL.Statement
,%ResultSet
使用Query
- 使用
%SQL.Statement
对象调用Query
- 使用
%ResultSet
对象调用Query
- 使用
-
第
215
讲Query
- 通过Json
数据或方法动态生成Query
-
第
216
讲Query
- 通过Select Sql
语句动态生成Query
-
第
217
讲Query
- 通过Query
生成动态Query
-
第
218
讲Query
- 支持传统的Query
并通过参数形式生成Query
列 -
第
219
讲Query
- 定义通用Query
,只需要实现Exceute
方法 -
第
220
讲Query
- 通过Query
生成Json
,通过Query
生成Csv
-
第
221
讲 生命周期回调方法 - 从新建到保存-
回调方法列表
%OnNew()
%OnAddToSaveSet()
%OnBeforeSave()
%OnAfterSave()
%OnSaveFinally()
%OnValidateObject()
%OnRollBack()
%OnClose()
-
%Save
回调示例
-
-
第
222
讲 生命周期回调方法 - 从打开到删除%OnOpen()
%OnOpenFinally()
%OnReload()
%OnConstructClone()
%OnAfterDelete()
%OnDelete()
%OnDeleteFinally()
%Delete
示例
-
第
223
讲 生命周期回调方法 - 索引%OnBeforePurgeIndices()
%OnAfterPurgeIndices()
%OnBeforeBuildIndices()
%OnAfterBuildIndices()
%BuildIndices
示例
-
第
224
讲 填充工具 - Populate实用程序简介%Library.PopulateUtils
填充方法列表- 数据填充
Populate()
方法简介
-
第
225
讲 填充工具 - 集合属性- 集合属性
-
第
226
讲 填充工具 - 引用序列化对象的属性 -
第
227
讲 填充工具 - 关系- 一对多关系
- 主子关系
- 填充顺序
-
第
228
讲 填充工具 - 引用持久对象的属性 -
第
229
讲 填充工具 - 为非集合属性指定POPSPEC
参数 -
第
230
讲 填充工具 - 为列表属性指定POPSPEC
参数 -
第
231
讲 填充工具 - 为数组属性指定POPSPEC
参数 -
第
232
讲 填充工具 - 通过SQL
表指定POPSPEC
参数 -
第
233
讲 填充工具 - 基于另外一个属性生成 -
第
234
讲 动态派发- 动态派发方法
%DispatchMethod()
%DispatchClassMethod()
%DispatchGetProperty()
%DispatchSetProperty()
%DispatchSetMultidimProperty()
- 动态派发方法
-
第
235
讲 动态派发 - 动态属性示例 -
第
236
讲JSON
- 简介- 动态
JSON
简介 JSON
简单使用示例- 创建和操作动态实体
- 动态
-
第
237
讲JSON
- 使用JSON
文本构造器- 使用字符串
JSON
构造函数创建动态实体 - 使用
JSON
文本构造器
- 使用字符串
-
第
238
讲JSON
- 使用动态表达式和点语法- 使用动态表达式和点语法
- 使用点语法创建动态对象属性
- 使用点语法创建动态数组元素
-
第
239
讲JSON
- 使用%Set()
,%Get()
,%Remove()
- 使用
%Set()
,%Get()
,%Remove()
- 使用
%Set()
、%Get()
和%Remove()
以编程方式指定JSON
的键和值 - 使用
%Get()
和%Remove()
检索嵌套的动态实体 - 删除对象属性
- 删除数组元素
- 使用
-
第
240
讲JSON
- 链式动态实体方法 -
第
241
讲JSON
- 错误处理 -
第
242
讲JSON
- 序列化与反序列化- 将动态实体转换
JSON
字符串 - 将
JSON
字符串反序列化为动态对象 - 在嵌套复杂动态实体和
JSON
字符串之间进行转换
- 将动态实体转换
-
第
243
讲JSON
- 克隆JSON
对象 -
第
244
讲JSON
- 迭代JSON
- 使用
%GetNext()
遍历动态实体 - 遍历数组
- 遍历对象
- 使用
-
第
245
讲JSON
- 解决JSON
字符串超长问题- 将大型动态实体序列化为流
- 读取和写入
Global
字符流 Json
写入文件流
-
第
246
讲JSON
- 动态数组中的null
值 -
第
247
讲JSON
- 在数组中使用%Remove
-
第
248
讲JSON
- 使用%Size()
的数组迭代 -
第
249
讲JSON
- 使用%IsDefined()
测试有效值 -
第
250
讲JSON
- 在动态数组中使用%Push
和%Pop
- 使用
%Push()
和%Pop()
构建一个数组并销毁
- 使用
-
第
251
讲JSON
- 处理JSON
数据类型- 使用
%GetTypeOf()
返回值的数据类型 - 迭代和数据类型检测
- 区分动态数组,动态对象和
oref
- 使用
-
第
252
讲JSON
- 用%Set()
或%Push()
重写覆盖默认数据类型- 用
%Set()
或%Push()
重写覆盖默认数据类型
- 用
-
第
253
讲JSON
- 解析JSON
空值和布尔值- 解析
JSON
空值和布尔值
- 解析
-
第
254
讲JSON
- 解决Null
、空字符串和未赋值- 解决
Null
、空字符串和未赋值
- 解决
-
第
255
讲JSON
- 动态实体方法概览-
创建、读取、更新、删除
%Set()
可以更改现有动态实体成员属性或元素的值,也可以创建新成员并为其赋值。%Remove()
删除现有成员。%Get()
检索成员的值。
-
迭代数组
%GetIterator()
返回一个迭代器,其中包含指向动态实体每个成员的指针。%GetNext()
返回迭代器标识的成员的键和值,并将光标移到下一个成员。%Size()
返回成员数包括数组中未分配的元素。%IsDefined()
测试成员是否具有指定的值。
-
堆栈功能
%Push()
将新元素添加到动态数组的末尾。%Pop()
删除数组的最后一个元素并返回其值。这些方法不适用于动态对象,因为对象属性不是按可预测的顺序存储的。
-
序列化和反序列化
%FromJSON()
将JSON
字符串转换为动态实体。%FromJSONFile()
%ToJSON()
将动态实体序列化为规范JSON
字符串。
-
数据类型
%GetTypeOf()
返回一个字符串,该字符串指示指定成员值的数据类型。%Set()
和%Push()
提供一个可选的第三个参数来显式地指定值的数据类型。
-
-
第
256
讲JSON
-%JSON.Adaptor
- 简介,对象与JSON
互转- 导入导出
- 实体类继承
%JSON.Adaptor
- 将对象导出为
JSON
字符串 - 将
JSON
字符串导入到对象中
-
第
257
讲JSON
-%JSON.Adaptor
- 使用参数映射%JSONFIELDNAME
%JSONINCLUDE
%JSONIGNOREINVALIDFIELD
%JSONIGNORENULL
%JSONNULL
%JSONREFERENCE
%JSONIGNOREINVALIDFIELD
-
第
258
讲JSON
-%JSON.Adaptor
- 使用XData
映射块- 定义扩展数据映射块
-
第
259
讲JSON
-%JSON.Adaptor
- 格式化JSON
- 格式化
JSON
- 格式化
-
第
260
讲%Dictionary
- 是什么怎么用- 类别
- 判断类关键字是否存在
- 查看类定义
- 修改类定义
-
第
261
讲%Dictionary
- 类成员对应哪些表- 类定义类说明
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!