Indexes¶
The index
module defines two classes, Index
and
IndexDict
, derived from DbSchemaObject
and
DbObjectDict
, respectively.
Index¶
Class Index
is derived from
DbSchemaObject
and represents an index on a
database table, other than a primary key or unique constraint
index. Its keylist
attributes are the schema name, the table
name and the index name. Note that index names are supposed to be
unique with a given schema so the table name doesn’t have to be part
of the keylist
, but has been retained to facilitate certain
operations.
-
class
pyrseas.dbobject.index.
Index
(name, schema, table, description, unique=False, access_method='btree', keys=[], predicate=None, tablespace=None, cluster=False, keyexprs=None, defn=None, oid=None)¶ A physical index definition, other than a primary key or unique constraint index.
An index is identified by its schema name and index name. However, at this time, Pyrseas uses the triple schema-table-index names as the identifier.
-
Index.
key_expressions
()¶ Return comma-separated list of key column names and qualifiers
Returns: string
-
Index.
to_map
(db)¶ Convert an index definition to a YAML-suitable format
Returns: dictionary
-
Index.
create
(dbversion=None)¶ Return a SQL statement to CREATE the index
Returns: SQL statements
-
Index.
alter
(inindex)¶ Generate SQL to transform an existing index
Parameters: inindex – a YAML map defining the new index Returns: list of SQL statements Compares the index to an input index and generates SQL statements to transform it into the one represented by the input.
-
Index.
drop
()¶ Generate SQL to drop the current index
Returns: list of SQL statements
Index Dictionary¶
Class IndexDict
is derived from
DbObjectDict
and represents the collection
of indexes in a database.
-
class
pyrseas.dbobject.index.
IndexDict
(dbconn=None)¶ The collection of indexes on tables in a database
-
IndexDict.
from_map
(table, inindexes)¶ Initialize the dictionary of indexes by converting the input map
Parameters: - table – table owning the indexes
- inindexes – YAML map defining the indexes