posts - 176, comments - 240, trackbacks - 0, articles - 7

          權(quán)限管理中進(jìn)行數(shù)據(jù)訪問控制,其基本模式如下
              operation target = selector(resource)       
              selector = user selector + auth filter
          這里需要對resource的結(jié)構(gòu),以及選擇算子的顯式建模。selector必須允許權(quán)限系統(tǒng)追加filter,例如
          IDataSource包中所使用的Query對象。
                 sql語言的表達(dá)能力有限, 作為選擇算子來使用有時需要resource作一些結(jié)構(gòu)上的調(diào)整,增加一些冗余的字段。例如表達(dá)一段時間內(nèi)的利率,我們需要使用from_date和 to_date兩個字段來進(jìn)行描述,其中to_date的值與下一條記錄的from_date相同。
               value     from_date         to_date
               0.01    2003-01-01        2003-05-01
               0.012   2003-05-01        2004-01-01  

          如果表達(dá)一條航線中的多個階段,我們可能會在每條記錄中增加起始站和終點(diǎn)站兩個字段。
                更重要的一個常見需求是樹形結(jié)構(gòu)在關(guān)系數(shù)據(jù)庫中的表達(dá)。為了能夠直接操縱一個分支下的所有記錄,在層次固定的情況下,我們可能會增加多個分類字段,例如數(shù) 據(jù)倉庫中的層次維度。在層次數(shù)目不確定的情況下,我們將不得不使用層次碼或者類似于url的其他方案,通過layer_code like '01.01.%' 之類的語句實(shí)現(xiàn)分支選擇。為了限制選擇的深度,我們可能還需要layer_level字段。基于層次碼和層次數(shù),我們可以建立多種選擇算子,例如包含所有 直接子節(jié)點(diǎn),包含自身及所有父節(jié)點(diǎn)等等。

          主站蜘蛛池模板: 余江县| 年辖:市辖区| 香港 | 黄石市| 三亚市| 将乐县| 新源县| 清新县| 蒲城县| 古蔺县| 西吉县| 鹿泉市| 土默特左旗| 巴林右旗| 南乐县| 绥阳县| 阿克| 岱山县| 商城县| 四会市| 红河县| 临澧县| 襄城县| 大庆市| 洪雅县| 淮滨县| 潜江市| 奉化市| 邮箱| 凤山市| 香河县| 荃湾区| 晴隆县| 上杭县| 吐鲁番市| 兖州市| 黔东| 顺昌县| 林州市| 中卫市| 赤城县|