您的位置: 旅游網 > 圖庫 >> 美女模特

    基于自定義函數的

    發布時間:2021-10-29 05:43:27

    留言版上的第2330號問題是:

    在oralce中給自建函數創建索引,結果不成功。

    source:Create Index IDX_T_SP_TWOTYPESTAT_0_f On T_SP_TWOTYPESTAT_0(f_dateadd(yearmonth,12,2));

    err:the function is not deterministic.

    我們看一下這是為什么?

    單注獎金為28.59萬。當期我省達州彩民贏得幸運 隨便一個測試可以再現這個問題,我門創建一個函數(本范例函數用于進行16進制向10進制轉換):

    CREATE OR REPLACE FUNCTION h2ten (

    p_str IN VARCHAR2,

    p_from_base IN NUMBER DEFAULT 16

    )

    RETURN NUMBER

    IS

    l_num NUMBER DEFAULT 0;

    l_hex VARCHAR2 (16) DEFAULT \'ABCDEF\';

    BEGIN

    FOR i IN 1 .. LENGTH (p_str)

    LOOP

    l_num :=

    l_num * p_from_base + INSTR (l_hex, UPPER (SUBSTR (p_str, i, 1)))

    - 1;

    END LOOP;

    RETURN l_num;

    END h2ten;

    此時創建索引,獲得如下錯誤信息:

    SQL create table t as select username,\'a\' hex from dba_users;

    Table created

    SQL create index i_t on t (h2ten(hex));

    create index i_t on t (h2ten(hex))

    ORA-30553: The function is not deterministic

    如果需要創建基于自定義函數的索引,那么我們需要指定deterministic參數:

    CREATE OR REPLACE FUNCTION h2ten (

    p_str IN VARCHAR2,

    p_from_base IN NUMBER DEFAULT 16

    )

    RETURN NUMBER DETERMINISTIC

    IS

    l_num NUMBER DEFAULT 0;

    l_hex VARCHAR2 (16) DEFAULT \'ABCDEF\';

    BEGIN

    FOR i IN 1 .. LENGTH (p_str)

    LOOP

    l_num :=

    l_num * p_from_base + INSTR (l_hex, UPPER (SUBSTR (p_str, i, 1)))

    - 1;

    END LOOP;

    RETURN l_num;

    END h2ten;

    此時創建索引即可:

    SQL create index i_t on t (h2ten(hex));

    Index created

    Oracle這樣解釋這個參數:

    The hint DETERMINISTIC helps the optimizer avoid redundant function calls. If a stored function was called previously with the same arguments, the optimizer can elect to use the previous result. The function result should not depend on the state of session variables or schema objects. Otherwise, results might vary across calls. Only DETERMINISTIC functions can be called from a function-based index or a materialized view that has query-rewrite enabled.

    查看本文來源

    重慶無痛人流
    呼和浩特治療婦科哪家醫院好
    太原宮頸糜爛治療費用
    猜你會喜歡的
    猜你會喜歡的
    主站蜘蛛池模板: 男女无遮挡动态图| 草草影院第一页| 日韩欧美中文字幕在线视频| 人人妻人人玩人人澡人人爽| 都市美妇至亲孽缘禁忌小说| 国产精品永久免费视频| 中国一级毛片在线观看| 日韩视频在线观看中字| 亚洲精品日韩专区silk| 绿巨人晚上彻底放飞自己| 国产成年女人特黄特色毛片免| 99re66热这里只有精品17| 成人免费午间影院在线观看| 久热re这里只有精品视频| 毛片免费在线观看| 农村老熟妇乱子伦视频| 久久国产综合精品欧美| 深夜福利一区二区| 四虎成人精品国产永久免费无码 | 中文字幕avdvd| 极上セレブ妇人北条麻妃bt| 亚洲视频免费在线观看| 美妇岳的疯狂迎合| 国产成人精品视频网站| 97av视频在线播放| 局长的又长又粗慧芳| 久久国产经典视频| 欧美在线黄色片| 人人狠狠综合久久亚洲| 美女视频黄.免费网址| 国产大学生系列| 影音先锋成人资源| 夜夜燥天天燥2022| 一级做a爰性色毛片| 日本a∨在线播放高清| 五十路亲子中出在线观看| 欧美黑人乱大交| 偷窥自拍10p| 美女又黄又免费的视频| 国产人成精品香港三级古代 | 日韩一区二区三区电影|