本节提供有关Index
该类的信息。
- 家长班
- 儿童班
没有任何
- 描述
-
此类表示
NDB Cluster
表列上的索引。它是NdbDictionary
该类的后代,使用Object
该类。如果您使用 NDB API 创建或更改索引,则 MySQL 看不到这些修改。唯一的例外是使用
Index::setName()
重命名索引。 - 方法
-
下表列出了公共方法
Index
以及每个方法的用途或用途:表 2.22 索引类方法及说明
姓名 描述 Index()
类构造器 ~Index()
析构函数 addColumn()
将 Column
对象添加到索引addColumnName()
按名称向索引添加列 addColumnNames()
按名称向索引添加多个列 getColumn()
获取构成(部分)索引的列 getLogging()
检查索引是否记录到磁盘 getName()
获取索引的名称 getNoOfColumns()
获取属于索引的列数 getObjectStatus()
获取索引对象状态 getObjectVersion()
获取索引对象状态 getObjectId()
获取索引对象 ID getTable()
获取被索引的表的名称 getType()
获取索引类型 setLogging()
启用/禁用将索引记录到磁盘 setName()
设置索引的名称 setTable()
设置要索引的表的名称 setType()
设置索引类型
- 类型
Index
定义一种公共类型,Type
类型。
- 描述
-
这用于创建 的新实例
Index
。MySQL 服务器无法看到使用 NDB API 创建的索引。
- 签名
Index ( const char* name = "" )
- 参数
新索引的名称。可以创建一个没有名称的索引,然后使用
setName()
. 参见 Index::setName()。- 返回值
的新实例
Index
。- 析构函数
析构函数 (
~Index()
) 作为虚拟方法提供。
- 描述
-
此方法可用于将列添加到索引。
列的顺序与它们添加到索引的顺序相匹配。但是,这只对有序索引有影响。
- 签名
void addColumn ( const Column& c )
- 参数
c
对要添加到索引的列 的引用。- 返回值
没有。
- 描述
此方法的工作方式与 相同
addColumn()
,不同之处在于它采用列名作为参数。参见 Index::getColumn()。- 签名
void addColumnName ( const char* name )
- 参数
要添加到索引的
name
列的 ,作为常量字符指针。- 返回值
没有。
- 描述
-
此方法用于一次将多个列名添加到索引定义中。
与
addColumn()
和addColumnName()
方法一样,索引按照它们添加的顺序编号。这通常只对有序索引有影响。 - 签名
void addColumnNames ( unsigned noOfNames, const char** names )
- 参数
-
此方法有两个参数,列在此处:
noOfNames
要添加到索引 的列数和名称 。names
要添加的(作为指向指针的指针) 。
- 返回值
没有。
- 描述
此方法检索索引中指定位置的列。
- 签名
const Column* getColumn ( unsigned no ) const
- 参数
列的顺序位置编号
no
,作为无符号整数。使用该getNoOfColumns()
方法来确定有多少列构成索引——有关详细信息,请参阅 Index::getNoOfColumns()。- 返回值
在索引中具有位置的列
no
,作为指向 的实例的指针Column
。请参阅 第 2.3.1 节,“列类”。
- 描述
-
使用此方法确定是否已为索引启用日志记录到磁盘。
未记录的索引会在集群启动或重新启动时重建。
有序索引目前不支持记录到磁盘;每次启动集群时都会重建它们。(这包括重新启动。)
- 签名
bool getLogging ( void ) const
- 参数
没有。
- 返回值
-
一个布尔值:
true
: 正在将索引记录到磁盘。false
: 索引未被记录。
- 描述
此方法获取索引的对象状态。
- 签名
virtual Object::Status getObjectStatus ( void ) const
- 参数
没有。
- 返回值
一个
Status
值;有关详细信息,请参阅 Object::Status。
- 描述
此方法获取索引的对象版本(请参阅 NDB Schema Object Versions)。
- 签名
virtual int getObjectVersion ( void ) const
- 参数
没有。
- 返回值
索引的对象版本,作为整数。
- 描述
此方法用于启用或禁用将索引记录到磁盘。
- 签名
void setLogging ( bool enable )
- 参数
setLogging()
采用单个布尔参数enable
。如果enable
是true
,则为索引启用日志记录;如果为 false,则禁用该索引的日志记录。- 返回值
没有。
- 描述
-
此方法设置索引的名称。
这是唯一 一个结果对 MySQL 服务器可见的方法。
Index::set
*
() - 签名
void setName ( const char* name )
- 参数
所需
name
的索引,作为常量字符指针。- 返回值
没有。
本节提供有关
Index
类型的信息。
- 描述
-
这是一个枚举类型,它描述了由 的给定实例表示的列索引的排序
Index
。不要将此枚举类型与
Object::Type
或 混淆Column::Type
。 - 枚举值
-
下表显示了可能的值以及说明:
表 2.23 Index::Type 数据类型值和描述
姓名 描述 Undefined
未定义的对象类型(初始/默认值) UniqueHashIndex
唯一无序哈希索引(目前仅支持索引类型) OrderedIndex
非唯一、有序索引