ALTER TEXT SEARCH CONFIGURATION

Function

ALTER TEXT SEARCH CONFIGURATION modifies the definition of a text search configuration. You can modify its mappings from token types to dictionaries, change the configuration's name or owner, or modify the parameters.

The ADD MAPPING FOR form installs a list of dictionaries to be consulted for the specified token types; an error will be generated if there is already a mapping for any of the token types.

The ALTER MAPPING FOR form removes existing mapping for those token types and then adds specified mappings.

ALTER MAPPING REPLACE ... WITH ... and ALTER MAPPING FOR... REPLACE ... WITH ... options replace old_dictionary with new_dictionary. Note that only when pg_ts_config_map has tuples corresponding to maptokentype and old_dictionary, the update will succeed. If the update fails, no messages are returned.

The DROP MAPPING FOR form deletes all dictionaries for the specified token types in the text search configuration. If IF EXISTS is not specified and the string type mapping specified by DROP MAPPING FOR does not exist in text search configuration, an error will occur in database.

Important Notes

Syntax

1
2
ALTER TEXT SEARCH CONFIGURATION name 
    ADD MAPPING FOR token_type [, ... ] WITH dictionary_name [, ... ];
1
2
ALTER TEXT SEARCH CONFIGURATION name 
    ALTER MAPPING FOR token_type [, ... ] REPLACE old_dictionary WITH new_dictionary;
1
2
ALTER TEXT SEARCH CONFIGURATION name
    ALTER MAPPING FOR token_type [, ... ] WITH dictionary_name [, ... ];
1
2
ALTER TEXT SEARCH CONFIGURATION name
    ALTER MAPPING REPLACE old_dictionary WITH new_dictionary;
1
2
ALTER TEXT SEARCH CONFIGURATION name
    DROP MAPPING [ IF EXISTS ] FOR token_type [, ... ];
1
ALTER TEXT SEARCH CONFIGURATION name OWNER TO new_owner;
1
ALTER TEXT SEARCH CONFIGURATION name RENAME TO new_name;
1
ALTER TEXT SEARCH CONFIGURATION name SET SCHEMA new_schema;
1
ALTER TEXT SEARCH CONFIGURATION name SET ( { configuration_option = value } [, ...] );
1
ALTER TEXT SEARCH CONFIGURATION name RESET ( {configuration_option} [, ...] );

Parameter description

Examples

Add a type mapping for the text search type ngram1.

1
ALTER TEXT SEARCH CONFIGURATION ngram1 ADD MAPPING FOR multisymbol WITH simple;

Change the owner of text search configuration.

1
ALTER TEXT SEARCH CONFIGURATION ngram1 OWNER TO joe;

Modify the schema of text search configuration.

1
ALTER TEXT SEARCH CONFIGURATION ngram1 SET SCHEMA joe;

Rename a text search configuration.

1
ALTER TEXT SEARCH CONFIGURATION joe.ngram1 RENAME TO ngram_1;

Delete type mapping.

1
ALTER TEXT SEARCH CONFIGURATION joe.ngram_1 DROP MAPPING IF EXISTS FOR multisymbol;

Add text search configuration string mapping.

1
ALTER TEXT SEARCH CONFIGURATION english_1 ADD MAPPING FOR word WITH simple,english_stem;

Add text search configuration string mapping.

1
ALTER TEXT SEARCH CONFIGURATION english_1 ADD MAPPING FOR email WITH english_stem, french_stem;

Modify text search configuration string mapping.

1
ALTER TEXT SEARCH CONFIGURATION english_1 ALTER MAPPING REPLACE french_stem with german_stem;

Query information about the text search configuration.

1
2
3
4
5
6
7
8
SELECT b.cfgname,a.maptokentype,a.mapseqno,a.mapdict,c.dictname FROM pg_ts_config_map a,pg_ts_config b, pg_ts_dict c WHERE a.mapcfg=b.oid AND a.mapdict=c.oid AND b.cfgname='english_1' ORDER BY 1,2,3,4,5;
  cfgname  | maptokentype | mapseqno | mapdict |   dictname   
-----------+--------------+----------+---------+--------------
 english_1 |            2 |        1 |    3765 | simple
 english_1 |            2 |        2 |   12960 | english_stem
 english_1 |            4 |        1 |   12960 | english_stem
 english_1 |            4 |        2 |   12966 | german_stem
(4 rows)

Links

CREATE TEXT SEARCH CONFIGURATION, DROP TEXT SEARCH CONFIGURATION