后关系型数据库学习之生成数据记录

来源:互联网 发布:数据库的安全性是指 编辑:程序博客网 时间:2024/04/29 23:22

后关系型数据库简介

CACHÉ后关系型数据库/多维对象数据库属于第三代数据库技术,它提供了三种整合数据存取方式:健壮的对象式存取方式,高性能的SQL方式和多维存取方式。Caché能够加速Web应用的开发过程,提高特殊事务处理的速度,增强扩展性,加快对事务型数据的实时查询,而且仅需要很小的系统维护工作。
Caché可以运行在Windows,OpenVMS,Linux和主流的UNIX系统平台上,它可以部署在低并发用户数(有2个)甚至10000个并发用户的系统上。
在某些特定的用途中,如海量数据的快速读写和查询挖掘应用,Cache数据库也可以替代关系型数据库+内存/主存数据库。内存数据库的优点在于可以快速读写数据,但不能安全保存数据,同时进行查询;而关系型数据库可以安全保存数据库,但不能进行快速读写操作。 Cache使用底层的多维结构,可以解决关系型数据库的欠缺和内存数据库的欠缺。
基于多维的对象数据库的数据挖掘可以实现无cube建模,结合cache自带的位图索引技术,快速对海量数据进行挖掘。

下面是利用cache数据库中终端窗口工具执行的数据记录插入的操作,从中我们可以看到数据库就是对象的本质

1.打开终端窗口,右键点击窗口右下角的Cache图标,在菜单中选择Terminal菜单项,如下图所示: 

2.在出现的窗口中执行如下命令,其中用到的数据表已经按对象的方式定义好了,如下图所示:

//改变当前命名空间

USER>znspace "Company"
 //生成一个新的人员的类实例,也表示要创建一条人员的数据记录
COMPANY>set person=##class(Company.Person).%New()
 //设置当前新实例的人员的姓名属性Name
COMPANY>set person.Name="John"
 //设置当前新实例的人员的身份证号属性CardID
COMPANY>set person.CardID="230104197812084015"
 //设置当前新实例的人员的性别属性Gender
COMPANY>set person.Gender="男"
 //设置当前新实例的人员类的另一个关系类属性Home属性的城市属性City,这一点很重要,注意和关系数据库中实现的区别
COMPANY>set person.Home.City="Newyork"
//设置当前新实例的人员类的另一个关系类属性Home属性的城市属性Country,这一点很重要,注意和关系数据库中实现的区别
COMPANY>set person.Home.Country="American"
 //执行数据保存动作,并取得保存数据的状态(成功与否)
COMPANY>set sc = person.%Save()
 //实际应用中可以通过检测此返回值来查看数据是否保存成功以及失败时的具体原因
COMPANY>write sc
1

//执行一个类里的方法打印人员姓名
COMPANY>do person.printPersonInfo()
John
COMPANY>
到此,一打数据记录已经保存,此时并没写SQL语句,只是写了我们正常的在使用关系数据时必须要写的面向对象的应用的程序代码部分,看到此您是不是感觉到很高兴呢,反正我是突然对此感兴趣了,所以下一步还要对此产品做进一步的评估,只是现在还不知道具体的产品价格及许可的方式一些问题,那是以后的事了,今天就先写到这里,以后再与大家把学习Cache数据库的心得写下来与大家共享,毕竟现在国内还是很少用到这个数据库不过我感觉此数据有一定的发展前途,我们还是拭目以待吧。