一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第8天,点击查看活动详情。
第105章 SQL函数 %OID
返回 ID 字段的 OID 的标量函数。
大纲
%OID(id_field)
参数
id_field-ID字段或引用字段的字段名称。
描述
%OID 采用字段名称并返回对象的完整 OID(对象 ID)。该字段必须是 ID 字段或引用字段(外键字段)。在 id_field 中指定任何其他类型的字段会生成 SQLCODE -1 错误。
示例
以下示例显示了与引用字段一起使用的 %OID:
SELECT Name, Spouse, %OID(Spouse)
FROM Sample.Person
WHERE Spouse IS NOT NULL
以下嵌入式 SQL 示例显示了与引用字段一起使用的 %OID:
/// d ##class(PHA.TEST.SQLFunction).Oid()
ClassMethod Oid()
{
&sql(SELECT Name, Spouse, %OID(Spouse)
INTO :n,:s,:soid
FROM Sample.Person)
w !,"Name is:",n
w !,"Spouse name is:",s
w !,"Spouse OID is:",soid
}
DHC-APP>d ##class(PHA.TEST.SQLFunction).Oid()
Name is:yaoxin
Spouse name is:13
Spouse OID is:13Sample.Person
调试菜单
调试菜单选项如下所述:
| 功能 | 描述 |
|---|---|
| Attach | 显示Caché服务器上当前正在运行的进程的列表,并允许附加到其中进行调试。如果选择一个进程并选择“确定”,则Studio会进入选定的目标进程,并允许开始对其进行调试。如果为目标过程中执行的当前例程生成了源,则该源将显示在编辑器窗口中。如果以后通过Debug> Stop终止调试,则目标进程将继续执行。 |
| Go | 如果当前不在调试,则Go将启动由项目的调试目标指定的目标。(如果尚未设置目标,则会要求提供一个目标。调试目标是要执行的例程或方法的名称;可以使用Debug Target 对话框进行设置。目标启动后,它将一直运行到第一个断点。如果未在应用程序中设置任何断点,则该断点将运行至完成而不会停止。 |
| Restart | 停止执行目标进程,重新启动它,然后继续调试(就像使用Go命令一样)。 |
| Stop | 停止调试并暂停目标进程或从目标进程中分离。如果目标进程正在运行并通过Attach附加到目标进程,则目标进程将继续运行。如果目标进程是由于执行Go命令而启动的,则它将终止。 |
| Break | 暂停目标进程的执行(即,如果调试器已附加到当前正在运行的目标进程,则不会停止)。 |
| Interrupt | 中断当前命令的执行。 |
| Step Into | 在目标进程中执行当前命令,并在下一条命令上停止,进入任何函数调用或循环体。 |
| Step Over | 在目标进程中执行当前命令,并在下一条命令上停止。调试器会逐步解决遇到的任何函数调用或代码块(例如循环)。它在函数调用或代码块后面的命令上停止。 |
| Step Out | 通过退出或退出当前代码块或功能来推进目标进程的执行,并在此外部级别上的下一条命令上停止。 |
| Run To Cursor | 仅适用于包含INT例程的文档。开始执行目标进程,并在目标进程到达光标当前所在的行时停止。这等效于在编辑器窗口中的当前行上设置断点,执行Go命令,并在程序停止时清除断点。 |
| Watch | 切换“Watch”窗口显示。 |
| Breakpoints | 切换断点设置或清除当前文档中当前行上的断点。查看断点:打开“断点”对话框,可以在其中列出,添加和删除断点。 |
| Debug Target | 输入调试目标-方法,例程,Zen页面或CSP页面。 |