文章 姚 鑫 · 十月 7, 2021 6m read

第三十八章 SQL命令 DROP TABLE

删除表及其数据(可选)。

大纲

DROP TABLE table 
     [RESTRICT | CASCADE] [%DELDATA | %NODELDATA]

参数

  • table - 要删除的表的名称。 表名可以是限定的(schema.table),也可以是非限定的(table)。 非限定表名接受默认模式名。 没有使用架构搜索路径值。
  • RESTRICTCASCADE - 可选-限制仅允许删除没有依赖视图或完整性约束的表。如果未指定关键字,则默认设置为RESTRITIONCASCADE允许删除具有依赖视图或完整性约束的表;作为表删除的一部分,任何引用视图或完整性约束也将被删除。外键约束不支持CASCADE关键字选项。
  • %DELDATA%NODELDATA - 可选-这些关键字指定在删除表时是否删除与表关联的数据。默认情况下,删除表格数据。

描述

DROP TABLE命令删除一个表及其对应的持久化类定义。如果该表是其架构中的最后一项,则删除该表也会删除该架构及其相应的持久化类包。

默认情况下,DROP TABLE同时删除表定义和表数据(如果存在)。%NODELDATA关键字允许指定删除表定义,但不能指定删除表的数据。

DROP TABLE删除与该表关联的所有索引和触发器。

要删除表格,必须满足以下条件:

0
0 278
文章 姚 鑫 · 十月 6, 2021 2m read

第三十七章 SQL命令 DROP ROLE

删除角色

大纲

DROP ROLE role-name

参数

  • role-name - 要删除的角色的名称。名称是一个标识符。角色名称不区分大小写。

描述

DROP ROLE语句删除角色。删除角色时, IRIS会将其从已授予该角色的所有用户和角色中撤消,并将其从数据库中删除。

可以通过调用$SYSTEM.SQL.Security.RoleExists()方法来确定角色是否存在。如果尝试删除不存在(或已被删除)的角色,则DROP ROLE将发出SQLCODE-118错误。

权限

DROP ROLE命令是特权操作。在嵌入式SQL中使用DROP ROLE之前,至少需要满足以下要求之一:

  • 必须具有%Admin_Secure:USE权限。
  • 该角色的所有者。
  • 已被授予具有管理员选项的角色。

否则将导致SQLCODE-99错误(特权冲突)。

使用$SYSTEM.Security.Login()方法分配具有适当权限的用户:

   DO $SYSTEM.Security.Login("_SYSTEM","SYS")
   &sql(      )

必须具有%Service_Login:Use权限才能调用$SYSTEM.Security.Login方法。

示例

下面的嵌入式SQL示例创建名为BkUser的角色,稍后将其删除:

0
0 121
文章 姚 鑫 · 十月 5, 2021 2m read

第三十六章 SQL命令 DROP QUERY

删除查询

大纲

DROP QUERY name [ FROM className ]

参数

  • name - 要删除的查询的名称。名称是一个标识符。不要指定查询的参数括号。名称可以是限定的(schema.name),也可以是非限定的(Name)。除非指定了FROM className子句,否则非限定查询名称将采用系统范围的默认架构名称。
  • FROM className - 可选-如果指定,FROM className子句将从给定类中删除查询。如果未指定此子句, IRIS将在架构的所有类中搜索查询,并将其删除。但是,如果找不到该名称的查询,或者找到多个该名称的查询,则会返回错误代码。如果删除查询导致空类,则DROP QUERY也会删除该类。

描述

DROP QUERY命令删除查询。删除查询时, IRIS将从所有已授予该查询的用户和角色中吊销该查询,并将其从数据库中删除。

要删除查询,必须具有GRANT命令指定的%DROP_QUERY管理权限。如果要尝试删除具有已定义所有者的类的查询,则必须以类的所有者身份登录。否则,系统会生成SQLCODE-99错误(权限冲突)。

0
0 115
文章 姚 鑫 · 十月 4, 2021 3m read

第三十五章 SQL命令 DROP PROCEDURE

删除存储过程

大纲

DROP PROCEDURE procname [ FROM className ]
DROP PROC procname [ FROM className ]

参数

  • procname - procname要删除的过程的名称。名称是一个标识符。不要指定过程的参数括号。名称可以是限定的(schema.name),也可以是非限定的(Name)。除非指定了FROM className子句,否则非限定过程名称将采用默认架构名称。
  • FROM className - 可选-如果指定,FROM className子句将从给定类中删除过程。如果未指定此子句, IRIS将在架构的所有类中搜索该过程,并将其删除。但是,如果找不到此名称的过程,或者找到多个此名称的过程,则会返回错误代码。如果删除过程导致空类,则DROP PROCEDURE也会删除该类。

描述

DROP PROCEDURE命令删除当前命名空间中的过程。删除过程时, IRIS会将其从已授予该过程的所有用户和角色中撤消,并将其从数据库中删除。

要删除过程,必须具有GRANT命令指定的%DROP_PROCEDURE管理权限。如果要尝试删除具有已定义所有者的类的过程,则必须以类的所有者身份登录。否则,系统会生成SQLCODE-99错误(权限冲突)。

0
0 153
文章 姚 鑫 · 十月 3, 2021 3m read

第三十四章 SQL命令 DROP METHOD

删除方法

大纲

DROP METHOD name [ FROM className ]

参数

  • name - 要删除的方法的名称。名称是一个标识符。请不要指定方法的参数括号。名称可以是限定的(schema.name),也可以是非限定的(Name)。除非指定了FROM className子句,否则非限定方法名称将采用默认架构名称。
  • FROM className - 可选-如果指定,FROM className子句将从给定类中删除该方法。请注意,必须指定方法的类名(MethBonusCalc),而不是SQL名称(BonusCalc)。如果未指定此子句, IRIS将在架构的所有类中搜索该方法,并将其删除。但是,如果找不到此名称的方法,或者找到多个此名称的方法,则会返回错误代码。如果删除该方法会导致空类,则Drop方法也会删除该类。

描述

DROP METHOD命令可删除方法。删除方法时, IRIS会将其从已授予该方法的所有用户和角色中撤消,并将其从数据库中删除。

要删除方法,必须具有GRANT命令指定的%DROP_METHOD管理权限。如果要尝试删除具有已定义所有者的类的方法,则必须以类所有者的身份登录。否则,系统会生成SQLCODE-99错误(权限冲突)。

0
0 113
文章 姚 鑫 · 十月 2, 2021 6m read

第三十三章 SQL命令 DROP INDEX

删除索引。

大纲

DROP INDEX index-name [ON [TABLE] table-name]

DROP INDEX table-name.index-name

参数

  • index-name - 要删除的索引的名称。Index-name是名称的SQL版本,可以包括下划线和其他标点符号。它作为SQL映射名称列在表的Management Portal SQL Catalog Details中。
  • ON table-nameON TABLE table-name - 可选-与索引关联的表的名称。可以使用任一语法指定表名:第一个语法使用ON子句;TABLE关键字是可选的。第二个语法使用限定名称语法schema-name.table-name.index-name。表名可以是限定的(schema.table),也可以是非限定的(Table)。未限定的表名采用缺省模式名。如果完全省略表名, IRIS将删除找到的第一个与index-name匹配的索引,如下所述。

描述

DROP INDEX语句从表定义中删除索引。可以使用DROP INDEX删除标准索引、位图索引或位片索引。通过删除相应的唯一索引,可以使用DROP INDEX删除唯一约束或主键约束。不能使用DROP INDEX删除位图范围索引或主地图(数据/主)IDKEY索引。

0
0 158
文章 姚 鑫 · 十月 1, 2021 2m read

第三十二章 SQL命令 DROP FUNCTION

删除函数

大纲

DROP FUNCTION name [ FROM className ]

参数

  • name - 要删除的函数的名称。名称是一个标识符。不要指定函数的参数括号。名称可以是限定的(schema.name),也可以是非限定的(Name)。除非指定了FROM className子句,否则非限定函数名称将采用系统范围的默认架构名称。
  • FROM className - 可选-如果指定,FROM className子句将从给定类中删除函数。请注意,必须指定函数的类名(FuncBonusCalc),而不是SQL名称(BonusCalc)。如果未指定FROM子句, IRIS将在架构的所有类中搜索该函数,并将其删除。但是,如果找不到此名称的函数,或者找到多个此名称的函数,则会返回错误代码。如果删除函数会导致空类,则DROP函数也会删除该类。

描述

DROP Function命令用于删除函数。当删除某个函数时, IRIS会将其从已授予该函数的所有用户和角色中撤消,并将其从数据库中删除。

要删除函数,必须拥有由GRANT命令指定的%DROP_Function管理权限。否则,系统会生成SQLCODE-99错误(权限冲突)。

0
0 162
文章 姚 鑫 · 九月 30, 2021 3m read

第三十一章 SQL命令 DROP DATABASE

删除数据库(命名空间)。

大纲

DROP DATABASE dbname [RETAIN_FILES]

参数

  • dbname - 要删除的数据库(命名空间)的名称。
  • RETAIN_FILES - 可选-如果指定,则不会删除物理数据库文件(IRIS.DAT文件)。默认情况下,删除.dat文件以及命名空间和其他数据库实体。

描述

DROP DATABASE命令删除命名空间及其关联的数据库。

指定的dbname是包含相应数据库文件的命名空间和目录的名称。指定dbname作为标识符。命名空间名称不区分大小写。如果指定的DBNAME命名空间不存在, IRIS将发出SQLCODE-340错误。

DROP DATABASE命令是一个特权操作。 在使用DROP DATABASE之前,必须以%Admin_Manage资源的用户身份登录。 用户还必须拥有用于例程和全局数据库定义的资源的READ权限。 如果不这样做,将导致SQLCODE -99错误(权限冲突)。

使用$SYSTEM.Security.Login()方法为用户分配适当的权限:

   DO $SYSTEM.Security.Login("_SYSTEM","SYS")
   &sql(      )

必须具有%Service_Login:Use权限才能调用$SYSTEM.Security.Login方法。

0
0 156
文章 姚 鑫 · 九月 29, 2021 1m read

第三十章 SQL命令 DROP AGGREGATE

删除用户定义的聚合函数。

大纲

DROP AGGREGATE name

参数

  • name - 要删除的用户定义聚合函数的名称。名称可以是限定的(schema.aggname),也可以是非限定的(aggname)。非限定名称采用默认架构名称。

描述

DROP Aggregate命令删除用户定义的聚合函数(UDAF)。使用CREATE Aggregate命令创建用户定义的聚合函数。

如果尝试删除不存在的UDAF,SQL会发出SQLCODE-428错误,并显示如下消息:User Defined Aggregate Function Sample.SecondHighest does not exist.

删除UDAF会自动清除引用该UDAF的所有缓存查询。

0
0 131
文章 姚 鑫 · 九月 29, 2021 9m read

第二十九章 SQL命令 DISTINCT

指定仅返回不同值的SELECT子句。

大纲

SELECT [DISTINCT [BY (item {,item2})] ]  |  [ALL]
  select-item {,select-item2}

参数

  • DISTINCT - 可选-返回组合选择项值唯一的行。
  • DISTINCT BY (item {,item2}) - 可选-返回按(项)值唯一的行的选择项值。
  • ALL - 可选-返回结果集中的所有行。默认设置。

描述

可选DISTINCT子句出现在SELECT关键字之后、可选TOP子句和第一个SELECT-ITEM之前。

DISTINCT子句应用于SELECT语句的结果集。它将每个不同(唯一)值返回的行数限制为一个任意行。如果未指定DISTINCT子句,则默认情况下显示满足选择条件的所有行。ALL子句与不指定DEFAULT子句相同;如果指定ALLSELECT将返回表中满足选择条件的所有行。

DISTINCT从句有两种形式:

  • SELECT DISTINCT:为选择项值的每个唯一组合返回一行。可以指定一个或多个选择项。例如,以下查询返回一行,其中包含Home_StateAge值的每个唯一组合的Home_StateAge值:
SELECT DISTINCT Home_State,Age FROM Sample.Person
0
0 569
文章 姚 鑫 · 九月 28, 2021 4m read

第二十八章 SQL命令 DELETE(二)

示例

以下两个示例都删除了TempEmployees表中的所有行。请注意,FROM关键字是可选的:

DELETE FROM TempEmployees
DELETE TempEmployees

以下示例从Employees表中删除员工编号234

DELETE
     FROM Employees
     WHERE EmpId = 234

下面的示例从ActiveEmployees表中删除CurStatus列设置为“RETIRED”的所有行:

DELETE FROM ActiveEmployees
     WHERE CurStatus = 'Retired'

下面的示例使用子查询删除行:

DELETE FROM (SELECT Name,Age FROM Sample.Person WHERE Age > 65)

嵌入式SQL和动态SQL示例

在下面的一组程序示例中,第一个程序创建了一个名为SQLUser.WordPair的表,该表有三列。下一个程序插入六条记录。后续程序使用基于指针的嵌入式SQL删除所有英语记录,并使用动态SQL删除所有法语记录。最后一个程序显示剩余的记录,然后删除该表。

0
0 108
文章 Nicky Zhu · 九月 27, 2021 35m read
 
  目录
技术概要: Globals 1

什么是 Globals? 1
为什么要学习 Globals? 1
试一试: 访问 Globals 的三种方式 2

用前须知 2
导入和检查类定义 2
导入示例数据并检查 Globals 3
关系访问 Globals(Accessing Globals Relationaly) 5
将 Globals 作为对象访问(Accessing Globals as Objects) 6
直接访问 Globals(Accessing Globals Directly) 7
有关 Globals 的更多信息 8

使用 InterSystems IRIS API 访问 Globals 9
了解有关 Globals 的更多信息 10

Globals 及其结构 10
多模型开发 10
InterSystems Native API 10

技术概要: Globals
本文档向您介绍了 globals 的概念,globals是 InterSystems IRIS®数据平台的底层存储结构。我们将向您展示如何使用关系模型和对象模型访问 globals,以及如何直接访问 globals。
要浏览所有的技术概要(First Look),包括可以在 InterSystems IRIS

0
0 306
文章 Jingwei Wang · 九月 27, 2021 32m read

<style type='text/css'>html {overflow-x: initial !important;}:root { --bg-color: #ffffff; --text-color: #333333; --select-text-bg-color: #B5D6FC; --select-text-font-color: auto; --monospace: "Lucida Console",Consolas,"Courier",monospace; --title-bar-height: 20px; } .mac-os-11 { --title-bar-height: 28px; } html { font-size: 14px; background-color: var(--bg-color); color: var(--text-color); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; } body { margin: 0px; padding: 0px; height: auto; inset: 0px; font-size: 1rem; line-height: 1.42857143;

0
0 469
文章 姚 鑫 · 九月 27, 2021 13m read

第二十七章 SQL命令 DELETE(一)

从表中删除行。

大纲

DELETE [%keyword] [FROM] table-ref [[AS] t-alias]
     [FROM [optimize-option] select-table [[AS] t-alias]
              {,select-table2 [[AS] t-alias]} ]
     [WHERE condition-expression]

DELETE [%keyword] [FROM] table-ref [[AS] t-alias]
     [WHERE CURRENT OF cursor]

参数

0
0 276
文章 姚 鑫 · 九月 26, 2021 4m read

第二十六章 SQL命令 DECLARE

声明游标

大纲

DECLARE cursor-name CURSOR FOR query

参数

  • cursor-name - 游标的名称,必须以字母开头,并且仅包含字母和数字。(游标名称不遵循SQL标识符约定)。游标名称区分大小写。它们受其他命名限制的约束,如下所述。
  • query - 定义游标结果集的标准SELECT语句。此选择可以包括%NOFPLAN关键字,以指定应忽略此查询的冻结计划(如果有)。此SELECT可以包括ORDER BY子句,可以带有或不带有TOP子句。此SELECT可以在FROM子句中指定表值函数。

描述

DECLARE语句声明在基于游标的嵌入式SQL中使用的游标。声明游标后,可以发出OPEN语句来打开游标,然后发出一系列FETCH语句来检索各个记录。游标定义SELECT查询,该查询用于选择要由这些FETCH语句检索的记录。可以发出一条CLOSE语句来关闭(但不是删除)游标。

作为SQL语句,仅嵌入式SQL支持DECLARE。对于动态SQL,可以使用简单的SELECT语句(不带INTO子句),也可以使用动态SQL和嵌入式SQL的组合。使用ODBC API通过ODBC支持等效操作。

0
0 205
文章 Jingwei Wang · 九月 26, 2021 6m read

本文解释了如何使用 InterSystems IRIS Native 从 .NET 应用程序访问 InterSystems IRIS®数据平台 globals。IRIS Native 还允许您运行ObjectScript 方法、函数和Routine。在本文中,您首先将连接到 InterSystems IRIS。然后您将在 InterSystems IRIS 中设置和检索一个global 节点的值,并在另一个 global 节点上进行迭代。您还将调用 InterSystems IRIS 类方法。所有这些活动都将在 .NET 应用程序中执行。

为了让您体验 IRIS Native,而又不陷入细节困境,本次探索特意设计得很简洁。这些活动被设计成只使用默认设置和功能,这样您就可以熟悉功能的基本原理,而不必处理那些离题或过于复杂的细节。当您把 IRIS Native 引入您的生产系统时,您可能需要做一些不同的事情。请确保不要把这种对 IRIS Native 的探索与真实的情况相混淆!

Globals 简介

0
0 261
文章 Louis Lu · 九月 26, 2021 7m read

本技术概要( First Look)通过重点概述和一个基础的、实际操作的示例,向您介绍在 InterSystems IRIS®数据平台上使用 .NET 网关(Gateway)的基础知识。您将了解 InterSystems IRIS 如何与 .NET 程序集进行互操作,在这个示例中,您将创建一个 .NET 网关(Gateway),并从 InterSystems IRIS 中的代理类调用基础 DLL。

本文档设计简单;当您把 .NET 网关(Gateway)引入您的生产系统时,您可能需要做一些不同的事情。本文档末尾的参考资料,提供了有关在生产中使用 .NET 网关(Gateway)的详细和完整的信息。

要浏览所有的技术概要(First Look),包括其他可以在免费的云实例web 实例上执行的技术概要(First Look),请参见 InterSystems First Looks(InterSystems 技术概要)。

1. 为什么 .NET 网关(Gateway)很重要

0
0 230
文章 姚 鑫 · 九月 24, 2021 4m read

第二十五章 SQL命令 CREATE VIEW(二)

通过视图更新

视图可用于更新视图所基于的表。可以通过视图插入新行,更新通过视图看到的行中的数据,以及删除通过视图看到的行。如果CREATE VIEW语句指定了此功能,则可以为视图发出INSERTUPDATEDELETE语句。要允许通过视图进行更新,请在定义视图时指定WITH CHECK选项(默认值)。

注意:如果视图基于分片表,则不能通过WITH CHECK OPTION视图进行INSERTUPDATEDELETE操作。 尝试这样做会导致一个SQLCODE -35,其中%msg INSERT/UPDATE/DELETE not allowed for view (sample.myview) based on sharded table with check option conditions

若要防止通过视图进行更新,请指定WITH READ ONLY。尝试通过使用READ ONLY创建的视图执行插入、更新或删除操作会生成SQLCODE-35错误。

要通过视图进行更新,必须具有要更新表或视图的适当权限,如GRANT命令所指定。

通过视图更新受以下限制:

0
0 128
文章 Jeff Liu · 九月 23, 2021 34m read
技术概要:使用 InterSystems 产品优化 SQL 性能使用 InterSystems SQL 优化查询使用 EXPLAIN 关键字显示查询计划在管理门户(Management Portal)中使用 SQL 查询接口显示查询计划发现查询计划结果中潜在的性能问题测试查询执行测试位片索引(Bitslice Index)的效果向交易类型字段(TransactionType Field)添加位图索引(Bitmap Index)重新测试查询性能查看随时间变化的查询性能了解有关 InterSystems SQL 的更多信息介绍材料

技术概要:使用 InterSystems 产品优化 SQL 性能

技术概要:使用 InterSystems 产品优化 SQL 性能
本技术概要(First Look)指南向您介绍了 InterSystems SQL 查询优化,包括查询分析工具的使用,几种索引方法以及随着时间的变化查看运行时统计数据的能力。
要浏览所有的技术概要(First Look),包括其他可以在免费的云实例或 web 实例上执行的技术概要(First Look),请参见 InterSystems First Looks(《InterSystems 技术概要》)。
使用 InterSystems SQL 优化查询

InterSystems IRIS®数据平台为

0
0 229
文章 Nicky Zhu · 九月 22, 2021 16m read

本文档将帮助您使用 InterSystems IRIS®数据平台集成产品转换数据。

要浏览所有的技术概要(First Look),包括可以在InterSystems IRIS 免费的评估实例上执行的那些,请参见InterSystems First Looks(《InterSystems 技术概要》)

数据转换和互操作性

数据转换是 InterSystems IRIS 互操作性的核心。您可以改变从一个系统传入的数据的格式和内容,以满足下游系统的要求,从而允许系统之间进行通信。简单地说,从一个系统发送的信息可以转换为另一个应用程序可以理解的信息。使用 InterSystems IRIS,可以很容易地进行数据转换的创建、测试和维护。

假设您有两个包含产品价格的零售系统。当系统 A 向其他系统发送数据时,包含了不加税的产品基准价格。但是,系统 B 需要在价格中包含地区税。InterSystems IRIS 互操作性产品中的数据转换可以在将数据发送到系统 B 之前将从系统 A 收到的价格转换为加税价格。一旦定义,数据转换将自动处理修改。

常见的转换包括:

  • 将值(value)从源信息复制到目标信息。
  • 根据源信息的(value)执行计算,并将结果复制到目标信息。
  • 为目标信息分配新的值(literal value)。
  • 重新排列数据的顺序。

探索 DTL 编辑器

0
0 237
文章 Hao Ma · 九月 22, 2021 4m read

技术概要:ODBC 和 InterSystems 数据库

如果您希望在 InterSystems IRIS®数据平台上使用 ODBC,本文将介绍如何设置它。
要浏览所有的技术概要(First Look),包括可以在 InterSystems IRIS 免费的评估实例上执行的那些,请参见 InterSystems 技术概要(InterSystems First Looks)。

1    ODBC: 如何在 InterSystems IRIS 中使用它
InterSystems 提供了一个完全兼容的(ODBC 3.5)ODBC 驱动程序,您可以使用它通过 ODBC 访问 InterSystems IRIS 数据库。当您安装 InterSystems IRIS 时,默认安装该驱动程序。
为了开始在 InterSystems IRIS 中使用 ODBC,您只需要在 InterSystems IRIS 实例上配置驱动程序。本技术概要(First Look)文档对这一过程进行了概述。
如果您还不熟悉 ODBC,请参见本文档末尾的 "了解更多信息" 一节中的链接,以获得更多信息。

0
0 509
文章 Hao Ma · 九月 22, 2021 22m read

InterSystems IRIS 基础:连接一个 IDE

本文档告诉您如何快速连接您的集成开发环境(IDE),用于 ObjectScript、Java、.NET、Python 或 JavaScript/Node.js 的集成开发环境连接到 InterSystems IRIS® 的一个实例,并使用从 GitHub 下载的模板文件验证您是否已经成功连接。
此外,接下来的两节还包括以下内容:
•    部署 InterSystems IRIS
列出用于部署 InterSystems IRIS 的已授权和免费评估实例的选项。如果您还没有一个可以使用的实例,请查看本节。
•    InterSystems IRIS 连接信息
详细介绍了将 IDE 连接到已授权或免费的 InterSystems IRIS 实例,以及以其他方式与之进行交互所需的信息 ,并解释了如何获得实例的信息。无论您想用哪个 IDE 连接到 InterSystems IRIS,都要查看涉及您所使用的实例类型的部分。

1    部署 InterSystems IRIS
本节涵盖了已授权的实例和免费的评估实例。

0
0 657
文章 姚 鑫 · 九月 22, 2021 3m read

第二十三章 SQL命令 CREATE USER

创建用户帐户。

大纲

CREATE USER user-name IDENTIFY BY password

CREATE USER user-name IDENTIFIED BY password

参数

  • user-name - 要创建的用户的名称。名称是最多128个字符的标识符。它可以包含Unicode字母。用户名不区分大小写。
  • password - 此用户的密码。密码必须至少为3个字符,并且不能超过32个字符。密码区分大小写。密码可以包含Unicode字符。

描述

CREATE USER命令使用指定的密码创建用户帐户。

用户名可以是最多160个字符的任何有效标识符。用户名必须遵循标识符命名约定。用户名可以包含Unicode字符。用户名不区分大小写。

作为分隔标识符指定的用户名可以是SQL保留字,可以包含逗号()、句号(.)、插入符号(^)和两个字符的箭头序列(->)。 它可以以除星号(*)以外的任何有效字符开头。

IDENTIFY BYIDENTIFIED BY关键字是同义词。

0
0 159
文章 Jingwei Wang · 九月 22, 2021 9m read

为什么要连接系统?

连接系统可以让一个系统处理来自非本系统的信息。例如,以下场景需要连接系统:

  • 为了提高效率,最初设计为执行单一功能的系统需要集成。例如,您可以通过集成跟踪库存、订购材料、记录销售和控制运输的各个系统来提高效率。
  • 系统合并后,在不同机构中执行相同功能的系统需要协同工作才能使统一的机构有效。

将系统连接在一起时,您可能会面临一些挑战,例如:

  • 不同系统使用不同的通信协议:一个系统可能使用TCP,另一个系统使用SOAP,第三个系统使用REST。
  • 不同系统使用不同格式或基于不同标准的不同消息。
  • 需要保证消息成功传递到正确的系统,并能够检测和纠正故障。
  • 必须监控传输消息的系统,如果一次消息过多,则为消息提供一个队列,并监控整体系统性能以确保没有任何障碍。

虽然可以编写自定义应用程序来连接系统,但开发一款InterSystems IRIS® 产品要容易得多,也快得多。

InterSystems IRIS 提供了一个框架,允许连接系统,并最大限度地减少或消除对自定义代码的需求。
 

0
0 249
文章 Louis Lu · 九月 22, 2021 13m read

技术概要(First Look)有助于您了解在InterSystems IRIS ®数据平台中如何使用SQL:标准的SQL功能、特有功能以及如何快速上手使用。

  要体验技术概要(First Look)的所有内容 ,您可以在InterSystems IRIS的免费评估实例上执行相关操作 ,请参阅InterSystems First Looks(《InterSystems 技术概要》)。

1. InterSystems SQL: 特性和性能

InterSystems IRIS 提供高性能、功能完善的 SQL。在 InterSystems IRIS 中使用SQL,包括在单个CPU内核上运行查询,到使用数十个内核的CPU上并行执行查询,已至在InterSystems IRIS服务器集群上运行分布式查询。

在InterSystems IRIS中,可以使用 SQL 的范围包括:                  

  • 联接(Joins)
  • 灵活、高性能索引
  • 聚合函数和分组
  • 以SQL或InterSystems ObjectScript (以下简称“ObjectScript” )编写的存储过程
  • JDBC和ODBC连接
  • 自动并行查询
  • 透明分布式查询
0
0 493
文章 Jingwei Wang · 九月 22, 2021 2m read

Object Script(四)

面向脚本

类的主要类型

类型

适用目的

Persistent

持久化对象够将对象保存到数据库中(写入磁盘),单独存储.

Serial

在持久化对象内部存储的对象,随持久化对象存储,不单独存储.

在给此对象中的属性赋值之前,不需要调用%New()来创建新的对象。如果此对象的属性包含在一个持久化类中,那么此对象的属性将被存储在持久化类的范围内。

Registered

临时的类和对象,不持久化(方法会保存).

Abstract

当类的属性被设置为abstract的时候,该类即被声明为抽象类,不能被实例化.

Datatype

数据类型,只包含数据验证和转换的方法.

CSP

用于处理HTTP事件

类成员

0
0 371
文章 Jeff Liu · 九月 22, 2021 7m read

本文档介绍了如何使用 InterSystems JDBC 驱动程序连接到 InterSystems IRIS®数据平台实例,这样您就可以在 InterSystems IRIS 中使用 Java。

要浏览所有的技术概要(First Look),包括可以在 InterSystems IRIS 免费的评估实例上执行的那些,请参见 InterSystems First Looks(《InterSystems 技术概要》)。

JDBC:如何在 InterSystems IRIS 中使用它

0
0 956