美文网首页
第四十三章 持久对象和SQL - 查看存储的数据

第四十三章 持久对象和SQL - 查看存储的数据

作者: Cache技术分享 | 来源:发表于2023-09-30 06:36 被阅读0次

第四十三章 持久对象和SQL - 查看存储的数据

查看存储的数据

本节演示对于任何持久对象,相同的值通过对象访问、SQL 访问和直接Global访问都是可见的。

在我们的 IDE 中,如果查看 Sample.Person 类,我们会看到以下属性定义:

/// Person's name.
Property Name As %String(POPSPEC = "Name()") [ Required ];

...java

/// Person's age.<br> 
/// This is a calculated field whose value is derived from <property>DOB</property>. 
Property Age As %Integer [ details removed for this example ]; 

/// Person's Date of Birth.
Property DOB As %Date(POPSPEC = "Date()");

在终端中,我们可以打开存储的对象并写入其属性值:

SAMPLES>set person=##class(Sample.Person).%OpenId(1)
 
SAMPLES>w person.Name
Newton,Dave R.
SAMPLES>w person.Age
21
SAMPLES>w person.DOB
58153
>>> person=iris.cls("Sample.Person")._OpenId(1)
>>> print(person.Name)
Newton, Dave R.
>>> print(person.Age)
21
>>> print(person.DOB)
58153

请注意,这里我们看到的是 DOB 属性的文字存储值。我们可以调用一个方法来返回该属性的显示值:

SAMPLES>write person.DOBLogicalToDisplay(person.DOB)
03/20/2000
>>> print(iris.cls("%Date").LogicalToDisplay(person.DOB))
03/20/2000

在管理门户中,我们可以浏览该类存储的数据,如下所示:

image.png

请注意,在本例中,我们看到 DOB 属性的显示值。 (在门户中,还有另一个执行查询的选项,通过该选项,可以控制是否对结果使用逻辑模式或显示模式。)

image.png

或者,在终端中,我们可以使用 ObjectScript 写入包含此实例的全局节点的值:

zwrite ^Sample.PersonD("1")
^Sample.PersonD(1)=$lb("","Newton,Dave R.","384-10-6538",58153,$lb("6977 First Street","Pueblo","AK",63163),
$lb("9984 Second Blvd","Washington","MN",42829),"",$lb("Red"))

由于篇幅原因,最后一个示例包含添加的换行符。

SQL 生成代码的存储

对于 SQL,系统生成可重用的代码来访问数据。

当首次执行 SQL 语句时, IRIS 会优化查询并生成和存储检索数据的代码。它将代码以及优化的查询文本存储在查询缓存中。请注意,此缓存是代码缓存,而不是数据缓存。

稍后,当执行 SQL 语句时, IRIS 会对其进行优化,然后将该查询的文本与查询缓存中的项目进行比较。如果 IRIS 找到与给定查询匹配的存储查询(除了空格等细微差别),它会使用为该查询存储的代码。

可以查看查询缓存并删除其中的任何项目。

相关文章

  • 对象持久化和数据序列化

    对象持久化(Persistence) 对象持久化就是将对象存储在可持久保存的存储介质上,例如主流的关系数据库中。 ...

  • 一些名词解释

    持久化对象持久化就是将对象存储在可持久保存的存储介质上,例如主流的关系数据库中。在实际应用中,需要将业务数据以对象...

  • pyspark

    1.在 pyspark 上运行sql,查看数据异常 运行 sql 查看查询出来的数据类型 直接读取hive中存储的...

  • RDB和AOF持久化(总结)

    什么叫持久化? 将数据(如内存中的对象)保存到可永久保存的存储设备中。 持久化的主要应用是将内存中的对象存储在数据...

  • 第23章、存储程序和视图

    本章讨论存储的程序和视图,这些数据库对象是根据存储在服务器上供以后执行的SQL代码定义的数据库对象。 存储的程序包...

  • XML

    持久化 数据在持久状态和瞬时状态转换的机制将内存中的对象存储在数据库中,或者磁盘文件XML数据文件中是一种对象服务...

  • MyBatis collection 集合嵌套查询树形节点

    MyBatis collection 集合 MyBatis 是数据持久层框架,支持定制化 SQL、存储过程以及高级...

  • Core Data详细解析(十一) —— MagicalReco

    版本记录 前言 数据是移动端的重点关注对象,其中有一条就是数据存储。CoreData是苹果出的数据存储和持久化技术...

  • 备忘录模式在swift中的体现

    能将某个对象持久化存储起来,同时也能从磁盘中将该对象取出来。存储:将对象通过encode转成Data数据进行存储取...

  • 【基本扩展模块】36、持久化模块

    目录一、对象持久化二、构造数据库三、常用操作 一、对象持久化 临时性对象类创建的对象并不是真正的数据库记录存储在内...

网友评论

      本文标题:第四十三章 持久对象和SQL - 查看存储的数据

      本文链接:https://www.haomeiwen.com/subject/tuldbdtx.html