Qore SqlUtil Module Reference  1.8.1
SqlUtil::AbstractIndex Class Referenceabstract

the abstract base class for index information More...

Inherits Serializable.

Public Member Methods

 constructor (string n, bool u, hash c)
 creates the object from the name, a unique flag, and a hash of column information
 
bool equal (AbstractIndex ix)
 returns True if the argument is equal to the current index, False if not
 
bool equalExceptName (AbstractIndex ix)
 returns True if the argument is equal to the current index with the exception of the name, False if not
 
abstract bool equalImpl (AbstractIndex ix)
 returns True if the argument is equal to the current index, False if not
 
*list< AbstractColumnConstraintgetAllSupportingConstraints ()
 returns all supporting constraints, if any
 
abstract string getCreateSql (string table_name, *hash< auto > opt)
 returns a string that can be used to create the index in the database
 
string getDropSql (string table_name)
 returns a string that can be used to drop the index from the database
 
*AbstractForeignConstraint getForeignConstraint ()
 returns the supporting constraint, if any
 
string getName ()
 returns the index name
 
list< auto > getRecreateSql (AbstractDatasource ds, string table_name, *hash< auto > opt)
 returns a list of strings to drop and recreate the current index; if there are dependent constraints, the list contains commands to disable the constraints before dropping the index and also contains commands to re-enable the contraints after re-creating the index
 
abstract string getRenameSql (string table_name, string new_name)
 returns a string that can be used to rename the index in the database
 
*AbstractColumnSupportingConstraint getSupportingConstraint ()
 returns the supporting constraint, if any
 
bool hasColumn (string cname)
 returns True if the constraint references the named column
 
 setForeignConstraint ()
 clears the supporting constraint
 
 setSupportingConstraint ()
 clears the supporting constraint
 
 setSupportingConstraint (AbstractColumnSupportingConstraint c)
 tags the index with a column supporting constraint (unique or fk constraint, etc) that the index supports
 
 setSupportingConstraint (AbstractForeignConstraint c)
 tags the index with a column supporting constraint (unique or fk constraint, etc) that the index supports
 

Public Attributes

Columns columns
 an object of class Columns representing the columns in the index
 
string name
 the name of the index
 
bool unique
 True if the index is a unique index, False if not
 

Private Attributes

*AbstractColumnSupportingConstraint constraint
 the AbstractColumnSupportingConstraint that this index supports, if any
 
*AbstractForeignConstraint foreign_constraint
 Any foreign constraint that this index supports.
 

Detailed Description

the abstract base class for index information