-
cache的存储结构
cache以多维数组存储数据,所有数据保存在Global中。
cache可以通过两种方式存放:
-
cache的变量结构
Local variables:普通变量,当前进程内有效的变量。
Process-private global variables:进程私有Global是当前进程中创建的,所有命名空间都快可以访问,进程结束时,进程私有Global也被清除。
Global variables:是特殊进程变量,以^开头,自动创建并存储在Cache数据库中。
special variables:特殊变量.......后面了解。
global支持事务回滚,其他变量不支持也不会有日志。
-
常见cache语法
set:可以简写为s,对变量或者多维数组赋值。
s a=1,b=2,c=3 s:a>2 d=5 //if a>2 d=5
do:简写d,执行某一操作。一般是执行类方法。
d ##class(web.DHCATEST).test() d:rowid>0 ##class(User.Classname).%DeleteId(rowid) //:一般是跟判断条件
kill:简写k,清楚变量或者Global,谨慎使用。
k n(1) k ^TMP("myglobal")
//用法二
s a=1 s b=2 s c=3 kill(a,b) //除去ab外的变量
write:输出变量或表达式的值。
s str="a" w str //输出str的值 w !,str //换行输出
zw:输出变量或表达式的值及其子节点值
zw ^ARC
Quit:简写q退出程序或者循环,quit可以返回一个值,在类方法中可以把结果quit出来。
Break:简写为b,终止程序,用于断点调试。
注释:// /**/
-
Global的存储位置
Global以^名称(下标1,下标2,下标3...)
^Airplane("Mannufacturer","Address","Country")="US"
可以自己定制Global,包括添加、删除、修改、遍历其节点。多维数组以树状形式保存,他的每一个节点都直接与磁盘和内存中的数据块相对应,因此可以达到极快的访问速度。在此基础上,将多维数组映射成对象或者关系型的格式,分别由面向对象的接口或者基于SQL的接口进行访问。
以下图为例,0处为主键索引,code存储主键数据,主键下子树是索引,根据索引在第一层中可以取出对应字段。数据都是按串存储。
-
查看Global的数据——两种方法
- terminal下查询:zw ^CT("TTL")
- Portal下查询:资源管理器-global-搜索。
- 使用sql查询自动将串解析为列表。sql存储中将节点定义为列名。
-
FDBMS------传统数据库管理系统查看查询操作
可以在terminal下利用FDBMS查看表结构
-
cache开发环境、工具介绍
也支持global查看,但切换库速度过慢。
标签:存储,Global,变量,Cache,cache,学习,global,简写 From: https://www.cnblogs.com/houyuxuan/p/17579193.html