Chinaunix首页 | 论坛 | 博客
  • 博客访问: 62515
  • 博文数量: 33
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 345
  • 用 户 组: 普通用户
  • 注册时间: 2014-08-02 08:41
文章分类

全部博文(33)

文章存档

2015年(13)

2014年(20)

我的朋友

分类: 数据库开发技术

2014-10-28 19:22:39

        eXtremeDB没有主键、外键之类的字段,但是eXtremeDB提供了一个叫做autoid的数据类型来代替主键、外键的功能。
        autoid的类型是autoid_t。在schemea文件中,可以声明autoid,我很声明autoid可以定义成数组的方式,其大小为预估的类对象的个数。autoid的值由eXtremeDB的runtime产生,其值是唯一的。
        /* database schema */
        class referenced {
          …
          autoid[4000];
          …
        };

        当一个类声明了autoid,那么该类将会产生两个函数:
        MCO_RET classname_autoid_find( /*IN*/ mco_trans_h t, /*IN*/ autoid_t id, /*OUT*/ classname *handle );
        MCO_RET classname_autoid_get( /*IN*/ classname *handle, /*OUT*/ autoid_t *id );
        当一个声明了autoid的类创建一个对象时候,eXtremeDB runtime就会产生一个唯一值来标识一个对象,而这个值就可以通过_autoid_get函数来获取。通过_autoid_find函数来获取对象的引用。


    
阅读(754) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~