Provided by: manpages-zh_1.5-1_all bug

NAME

       CREATE OPERATOR CLASS - 定義一虓s的操作符類

SYNOPSIS

       CREATE OPERATOR CLASS name [ DEFAULT ] FOR TYPE data_type USING index_method AS
         {  OPERATOR strategy_number operator_name [ ( op_type, op_type ) ] [ RECHECK ]
          | FUNCTION support_number funcname ( argument_type [, ...] )
          | STORAGE storage_type
         } [, ... ]

DESCRIPTIONyz
       CREATE       OPERATOR       CLASS       定義一虓s的操作符表。       一-
       蚞犑@符表定義一種特定的數據類型可以如何與一種索引一起使用。
       操作符表聲明特定的操作符可以為這種數據類型以及這種索引方法填充特定角色或者"策略"。
       操作符表還聲明索引方法在為一荅薑犌r段選定該操作符表的時-
       n使用的支持過程。
       所有操作符表使用的函數和操作符都必須在創建操作符表之前定義。

        如果給出了模式名字,那麼操作符表就在指定的模式中創建。
       否則就在當前模式中創建(在搜索路徑前悸漕碩;參閱   CURRENT_SCHEMA())。
       在同一蚍狾﹞云漕瑧操作符表可以有同樣的名字,但它-
       怚眸極峏韝ㄕP的索引方法。

        定義操作符表的使用者成為其所有者。目前,創造者必須是超級使用者。
       (作這樣的制是因為一茼陸暋D的操作符表定義會讓伺服器困惑,甚至崩潰。)

       CREATE  OPERATOR  CLASS    目前並不檢查這蚚定義是否包含所有索引方法需-
       n操作符以及函數。 定義一茼X法的操作符表是使用者的責任。

        參考 ``Interfacing Extensions to Indexes'' 獲取更多信息。

PARAMETERS數
       name    將n創建的操作符表的名字。名字可以用模式袡╮C

       DEFAULT
               如果出現了這-
              蚆鉿r,那麼該操作符表將成為它的數據類型的預設操作符表。  對於某-
              蚍矞型和訪問方式而言,最多可以有一蚞犑@符表是預設的。

       data_type
               這蚞犑@符表處理的字段數據類型。

       index_method
               這蚞犑@符表處理的索引訪問方式的名字。

       strategy_number
               一蚞犑@符和這蚞犑@符表關聯的索引訪問方式的策略數。

       operator_name
               一茤M該操作符表關聯的操作符的名字(可以用模式袡╮^。

       op_type
               一蚞犑@符的輸入數據類型,或者是  NONE  表示左目或者右目操作符。
              通常情況下可以省略輸入數據類型,因為這荇尕它-
              怍M操作符表的數據類型相同。

       RECHECK
               如果出現,那麼索引對這蚞犑@符是"lossy"(有損耗的),
              因此,使用這荅薑瓿阯薊漲璆眸楞新檢查,以保証它-
              怉u正滿足和此操作符相關的條件子句。

       support_number
               索引方法對一蚖P操作符表關聯的函數的支持過程數。

       funcname
               一茖蝻漲W字(可以有模式袡╮^,這-
              茖蝻O索引訪問方式對此操作符表的支持過程。

       argument_types
               函數的參數數據類型。

       storage_type
               實際存儲在索引裏的數據類型。通常它和字段數據類型相同,
              但是一些索引方法(到目前為止只有          GIST)允許它是不同的。
              除非索引方法允許使用一種不同的類型,否則必須省略 STORAGE 子句。

       OPERATOR,FUNCTION,和 STORAGE  子句可以按照任意順序出現。

EXAMPLESl
        下悸漕狺l命令為數據類型     _int4(int4     的數組)定義了一     GiST
       索引操作符表。 參閱 contrib/intarray/ 獲取完整的例子。

       CREATE OPERATOR CLASS gist__int_ops
           DEFAULT FOR TYPE _int4 USING gist AS
               OPERATOR        3       &&,
               OPERATOR        6       =       RECHECK,
               OPERATOR        7       @,
               OPERATOR        8       ~,
               OPERATOR        20      @@ (_int4, query_int),
               FUNCTION        1       g_int_consistent (internal, _int4, int4),
               FUNCTION        2       g_int_union (bytea, internal),
               FUNCTION        3       g_int_compress (internal),
               FUNCTION        4       g_int_decompress (internal),
               FUNCTION        5       g_int_penalty (internal, internal, internal),
               FUNCTION        6       g_int_picksplit (internal, internal),
               FUNCTION        7       g_int_same (_int4, _int4, internal);

COMPATIBILITYe性
       CREATE  OPERATOR CLASS 是一 PostgreSQL 擴展。 在 SQL 標準中沒有 CREATE
       OPERATOR CLASS。

SEE ALSO見
       ALTER OPERATOR CLASS  [alter_operator_class(7)],  DROP  OPERATOR  CLASS
       [drop_operator_class(l)]

者
       Postgresql  <laser@pgsqldb.org>