文章 Nicky Zhu · 二月 4, 2021 阅读大约需 7 分钟 案例: 建立只能使用SQL的用户 上一篇:IRIS中的权限管理 在上一篇文章中,我们介绍了IRIS中的权限控制体系。在本文中我们将以一个常见的实施需求为例介绍如何使用IRIS的权限配置出一个只能使用SQL的用户。 需求的分解 和所有用户需求一样,当用户提出一个需求时,除其语义显式的含义之外,还需分析其是否具有没有明确说明的含义。 对于一个只能使用SQL的用户这样一个需求,即应当结合平台的特征分解成为功能需求: 具有一个合法,可通过用户名和密码使用IRIS的用户 该用户的数据库权限 - 确认项:可以使用SQL访问所有数据库还是某几个特定的数据库? 该用户的SQL权限 - 确认项:对于特定的数据库,是否可以执行所有的DDL? - 确认项:对于特定的数据库,是否对每一张表都可以执行Select、Update等所有的DML 该用户的程序权限 - 确认项:用户是否可以通过Portal登录并管理IRIS? #SQL #安全 #数据库 #新手 #用户 #系统管理 #角色 #身份验证 #InterSystems IRIS #文档 10 1 0 26
文章 Nicky Zhu · 二月 3, 2021 阅读大约需 6 分钟 IRIS中的权限管理 下一篇:案例: 建立只能使用SQL的用户 IRIS通过认证(Authentication)与授权(Authorization)两项机制控制外部用户对系统及应用、数据资源的可访问性。因此。如需要进行权限控制,则需要通过配置认证和授权进行。 #SQL #安全 #数据库 #新手 #用户 #系统管理 #角色 #身份验证 #InterSystems IRIS #文档 00 0 0 19
文章 Botai Zhang · 一月 26, 2021 阅读大约需 3 分钟 利用Intersystems IRIS数据平台内置多模型整合医院信息查询业务解决方案 #JDBC #ObjectScript #SQL #数据模型 #键值 #InterSystems IRIS for Health Open Exchange app 20 0 1 38
文章 Qiao Peng · 一月 24, 2021 阅读大约需 3 分钟 解决SQL适配器连接到字符集为US7ASCII的Oracle数据库的中文乱码问题 在使用xDBC连接到字符集为US7ASCII的Oracle数据库时,大家可能遇到过中文的乱码问题,尤其是使用Oracle自己的xDBC驱动的时候。 字符集为US7ASCII的Oracle数据库虽然可以保存中文数据,但给客户端带来了很多麻烦,需要对获取和提交的数据进行转码。 在Ensemble/Health Connect/InterSystems IRIS 中使用SQL适配器连接到这样的Oracle数据库时,可以使用$ZCVT函数进行转码。 1. $ZCVT函数 $ZCVT函数是广泛使用的字符串转换函数,可以做大小写转换、编码转换、URL 和 URI 转换等。我们用其编码转换能力来解决字符集转码问题。 2. 获取的SQL结果集数据有中文时 #ODBC #SQL #互操作性 #Ensemble #HealthShare #InterSystems IRIS for Health 30 0 1 20
文章 Nicky Zhu · 一月 18, 2021 阅读大约需 4 分钟 活用数据库审计日志跟踪数据操作 在最近的项目里,多方同时连接同一个数据库并执行增删改查等各项数据操作。研发人员不时发现一些数据在不合规的情况下被新增甚至删除。因此,在实际工作中会有监控数据操作以便识别和处理异常操作的需求。本文将以监控和识别删除操作为例,介绍如何通过IRIS的审计功能实现对数据操作的监控和查询。 #API #DTL #Error Handling #Monitoring #SQL #数据库 #系统管理 #问题追踪 #InterSystems IRIS 00 0 0 18
文章 Peng Qiao · 一月 14, 2021 阅读大约需 8 分钟 将 global 映射到类的技巧(第 4/3 部分) 三部曲中的第四部,有人是《银河系漫游指南》的粉丝吗? 如果你希望为旧的 MUMPS 应用程序注入新的生命,请按照以下步骤将 global 映射到类,并将所有这些漂亮的数据公开给 Objects 和 SQL。 #Mapping #Object Data Model #SQL #全局 #Caché 00 0 0 12
文章 Nicky Zhu · 一月 11, 2021 阅读大约需 3 分钟 类、表和Globals——工作原理 当我向技术人员介绍InterSystems IRIS时,我一般会先讲其核心是一个多模型DBMS。 我认为这是其主要优势(在DBMS方面)。数据仅存储一次。您只需访问您想用的API。 - 您想要数据的概要?用SQL! - 您想用一份记录做更多事情?用对象! - 想要访问或设置一个值,并且您知道键?用Globals! 乍一看挺好的,简明扼要,又传达了信息,但当人们真正开始使用InterSystems IRIS时,问题就来了。类、表和Globals是如何关联的?它们之间有什么关系?数据是如何存储的? 本文我将尝试回答这些问题,并解释这些到底是怎么回事。 第一部分 模型偏见 处理数据的人往往对他们使用的模型有偏见。 开发者们把数据视为对象。对他们而言,数据库和表都是通过CRUD(增查改删,最好是基于ORM)交互的盒子,但底层的概念模型都是对象(当然这对于我们大多数使用面向对象编程语言的开发者来说没错)。 而DBA大部分时间都在搞关系型DBMS,他们把数据视为表。对象只是行的封装器。 对于InterSystems IRIS,持久类也是一个表,将数据存储在Global中,因此需要进行一些澄清。 #Object Data Model #SQL #全局 #关系表 #新手 #InterSystems IRIS 00 0 0 17
文章 Hao Ma · 一月 10, 2021 阅读大约需 15 分钟 APM – 监控 SQL 查询性能 自 Caché 2017 以后,SQL 引擎包含了一些新的统计信息。 这些统计信息记录了执行查询的次数以及运行查询所花费的时间。 对于想要对包含许多 SQL 语句的应用程序的性能进行监控和尝试优化的人来说,这是一座宝库,但访问数据并不像一些人希望的那么容易。 #Monitoring #SQL #性能 #Caché #InterSystems IRIS 00 0 0 15
文章 Stefan Wittmann · 一月 4, 2021 阅读大约需 4 分钟 从 SQL 生成 JSON 最近我一直在发布对 JSON 功能的一些更新,我很高兴许多人提供了反馈。 今天,我想将重点放在另一个方面:使用 SQL 查询生成 JSON。 #JSON #SQL #Atelier 10 3 0 24