第四十章 持久对象和SQL - Object IDs

news2024/11/27 9:55:44

文章目录

  • 第四十章 持久对象和SQL - Object IDs
  • Object IDs
    • `ID`是如何确定的
    • 访问 `ID`

第四十章 持久对象和SQL - Object IDs

Object IDs

每个对象在其所属的每个范围内都有一个唯一的 ID。在大多数情况下,使用此 ID 来处理对象。此 ID 是类中 %Persistent 的以下常用方法的参数:

  • %DeleteId()
  • %ExistsId()
  • %OpenId()

该类还有其他使用 ID 的方法。

ID是如何确定的

当首次保存对象时,会分配 ID 值。该任务是永久性的;无法更改对象的 ID。当删除或更改其他对象时,不会为对象分配新的 ID

任何ID在其范围内都是唯一的。

对象的 ID 确定如下:

  • 对于大多数类,默认情况下,ID 是在保存该类的对象时按顺序分配的整数。
  • 对于在父子关系中用作子类的类,ID 的构成如下:
parentID||childID

其中,parentID 是父对象的 IDchildID 是子对象在未在父子关系中使用时将收到的 ID。例子:

104||3

ID 是已保存的第三个子 ID,其父 ID 在其自己的范围内具有 ID 104

  • 如果该类具有 IdKey 类型的索引并且该索引位于特定属性上,则该属性值将用作 ID
SKU-447

此外,属性值无法更改。

  • 如果该类具有 IdKey 类型的索引,并且该索引位于多个属性上,则这些属性值将连接起来形成 ID。例如:
CATEGORY12||SUBCATEGORYA

.
此外,这些属性值无法更改。

访问 ID

要访问对象的 ID 值,请使用该对象从 %Persistent继承的 %Id() 实例方法。

SAMPLES>set person=##class(Sample.Person).%OpenId(2)

SAMPLES>write person.%Id()
2
>>> person = iris.cls("Sample.Person")._OpenId(2)
>>> print(person._Id())
2

SQL 中,对象的 ID 值可用作名为 %Id 的伪字段。请注意,当在管理门户中浏览表时,%Id 伪字段会显示标题 ID

在这里插入图片描述

尽管有这个标题,伪字段的名称是 %Id

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1056044.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何制作在线流程图?6款在线工具帮你轻松搞定

流程图,顾名思义 —— 用视觉化的方式来描述一种过程或流程。它可以应用于各种领域,从业务流程,算法,到计算机程序等。然而,在创建流程图时,可能会遇到许多问题或者困惑,如缺乏专业的设计技能&a…

锚框_的标定

一、查漏补缺、熟能生巧: 1.关于fix.axis.add_patch在原来图像的坐标系同添加 边框的函数的使用: 2.torch.arange( h , device)生成tensor的等差数组: 3.torch.T()就是transpose转置操作的函数咯: 4.torch.repeat操作&#xff0c…

静态数码管显示+动态数码管显示——“51单片机”

各位CSDN的uu们好呀,今天小雅兰的内容还是51单片机的知识,是为静态数码管显示和动态数码管显示,下面,让我们进入51单片机的世界吧!!! 静态数码管显示 动态数码管显示 源代码 静态数码管显示 …

网络运营推广过程中客户说需要资质

大家好,我是网络工程师成长日记实验室的郑老师,您现在正在查看的是网络工程师成长日记专栏,记录网络工程师日常生活的点点滴滴 一个同学跟我学网络运营,他说他现在也学我做弱电。然后他说他接到电话,对方都是问资质&am…

首发Orin N芯片,腾势追赶「智驾第一梯队」

张祥威 编辑 | 德新 英伟达最新一代芯片—— Orin N,腾势拿下 首发。 9月26日,腾势N7推出「高快智驾包」。官方描述中,这一选装将“基于新一代NIVIDIA DRIVE ORIN的 高性能平台”,可以实现高速NOA。 此前,腾势的…

Acwing 843. n-皇后问题

Acwing 843. n-皇后问题 知识点题目描述思路讲解代码展示 知识点 DFS剪枝 题目描述 思路讲解 代码展示 第一种搜索方式&#xff1a; #include <iostream>using namespace std;const int N 20;int n; char g[N][N]; bool col[N], dg[N * 2], udg[N * 2];void dfs(in…

常见开发、测试模型

开发模型瀑布模型螺旋模型增量、迭代敏捷开发模型 测试模型V模型W模型 开发模型 瀑布模型 瀑布模型的每一个阶段都只执行一次&#xff0c;是线性顺序进行的软件开发模式。 优点&#xff1a;每个阶段做什么&#xff1b;产生什么非常清晰&#xff1b; 缺点&#xff1a;风险往…

Python3数据科学包系列(三):数据分析实战

Python3中类的高级语法及实战 Python3(基础|高级)语法实战(|多线程|多进程|线程池|进程池技术)|多线程安全问题解决方案 Python3数据科学包系列(一):数据分析实战 Python3数据科学包系列(二):数据分析实战 一: 数据分析与挖掘认知升维 我们知道在数据分析与数据挖掘中,数据…

15: 8种GPIO模式和其他资源

目录 一:GPIO 1:简历 2:模式 3:位结构 4:八种模式 A: 浮空/上拉/下拉输入 B:模拟输入 ----GPIO_Mode_AIN C: 开漏/推挽输出 D:复用开漏/推挽输出 E: 模式总结 二:其他资源 1:片上资源/外设 2:引脚定义表 一:GPIO 1:简历 GPIO&#xff08;General Purpose Input …

排序---P1012 [NOIP1998 提高组] 拼数

思路&#xff1a; 这道题的思路就是进行排序&#xff0c;但不同于以往是根据数的大小排序&#xff0c;这道题是根据最高位最大就放在越前面。那么要怎么解决最高位越大排得越前这个问题呢&#xff0c;我们就会想到用字符串比较大小&#xff0c;就可以解决&#xff0c;所以我们…

RESTFul风格接口如何设计

RESTFul风格设计规范 HTTP协议请求方式要求 REST 风格主张在项目设计、开发过程中&#xff0c;具体的操作符合HTTP协议定义的请求方式的语义。 操作请求方式查询操作GET保存操作POST删除操作DELETE更新操作PUT 需求分析 数据结构&#xff1a; User {id 唯一标识,name 用户名&a…

车牌超分辨率:License Plate Super-Resolution Using Diffusion Models

论文作者&#xff1a;Sawsan AlHalawani,Bilel Benjdira,Adel Ammar,Anis Koubaa,Anas M. Ali 作者单位&#xff1a;Prince Sultan University 论文链接&#xff1a;http://arxiv.org/abs/2309.12506v1 内容简介&#xff1a; 1&#xff09;方向&#xff1a;图像超分辨率技术…

MySQL进阶_1.数据类型约束

文章目录 第一章、名词解释第二章、数据类型2.1、数据类型简介2.2、数据类型对应属性2.3、整数类型2.4、浮点类型2.5、定点数类型2.6、日期和时间类型2.7、文本字符串类型2.7.1、CHAR和VARCHAR区别2.7.2、TEXT 2.8、小结和建议 第三章、约束3.1 约束的定义3.2 非空约束3.3 唯一…

浅谈OV SSL 证书的优势

随着网络威胁日益增多&#xff0c;保护网站和用户安全已成为每个企业和组织的重要任务。在众多SSL证书类型中&#xff0c;OV&#xff08;Organization Validation&#xff09;证书以其独特的优势备受关注。让我们深入探究OV证书的优势所在&#xff0c;为网站安全搭建坚实的防线…

内网安全学习

域 域在我的理解就是一个局域网&#xff0c;管理员为了便于操作域内主机&#xff0c;通常会有一个DC&#xff08;domain control&#xff09;&#xff0c;域控主机可以直接控制其他域内主机&#xff0c;相当于域内的管理员权限&#xff0c;内网渗透的终极目的即拿到域控的权限…

嵌入式学习笔记(41)实时时钟RTC

7.6.1何为实时时钟 (1)real time clock&#xff0c;真实时间&#xff0c;就是所谓的xx年x月x日x时x分x秒星期x (2)RTC是SoC中一个内部外设&#xff0c;RTC有自己独立的晶振提供RTC时钟源&#xff08;32.768KHz&#xff09;&#xff0c;内部有一些寄存器用来记录时间&#xff…

Acwing 842. 排列数字

Acwing 842. 排列数字 知识点题目描述思路讲解代码展示 知识点 DFS 题目描述 思路讲解 DFS重点是&#xff1a;顺序&#xff01;&#xff08;暴力的手法&#xff09;&#xff08;递归&#xff09; 用 path 数组保存排列&#xff0c;当排列的长度为 n 时&#xff0c;是一种方…

pandas读取文件的时候出现‘OSError: Initializing from file failed’

报错原因&#xff1a; pandas.read_csv() 报错 OSError: Initializing from file failed&#xff0c;一般由两种情况引起&#xff1a;一种是函数参数为路径而非文件名称&#xff0c;另一种是函数参数带有中文。 原代码&#xff1a; data pd.read_csv(csv文件.csv) data导入文…

拒绝水文!八大排序(一)【适合初学者】直接插入排序和希尔排序

文章目录 直接插入排序希尔排序 大家好&#xff0c;我是纪宁。 这篇文章将向大家介绍直接插入排序算法和希尔排序算法。 直接插入排序 直接插入排序是一个简单的插入排序法&#xff0c;其基本思想是&#xff1a;把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有…

[中间件~大厂面试题] 腾讯三面,40亿的QQ号如何去重

前言&#xff1a; 在Spring Boot框架下&#xff0c;可以使用以下方法来去重40亿个QQ号.请注意&#xff1a;QQ号码的理论最大值为 2 32 − 1 2^{32} - 1 232−1&#xff0c;大概是43亿左右。 文章目录 提前总结(总分总&#xff5e;&#xff5e;&#xff5e;)最粗鲁的方式1. 使用…