介绍设备的相关信息ndbdictionary.
类,它存储有关的元信息NDB.
数据库对象,如表、列和索引。
而创建和删除数据库对象的首选方法是通过MySQL服务器,ndbdictionary.
也允许开发者通过NDB API执行这些任务。
-
父类
-
没有一个
-
子类
-
字典
那列
那对象
的枚举对应的数字ndbdictionary.
子类,参见文件/存储/ ndb / include / ndbapi / NdbDictionary.hpp
在NDB群集源树中。
-
描述
-
这是一个数据字典类,支持有关表,列和索引的查询。它还提供了定义这些数据库对象并删除它们的方法。使用模拟这些对象的内部类提供两种功能。这些包括以下内部类:
表格
使用表格
列
用于创建表列
指数
用于处理二级索引
字典
用于创建数据库对象和制作架构查询
事件
用于处理集群中的事件。
额外的对象
子类为使用NDB集群磁盘数据表以及外键约束所需的表空间、日志文件组、数据文件和撤消文件建模。
使用的表和索引使用ndbdictionary.
无法从MySQL Server查看。
通过从NDB群集创建的NDB API丢弃索引导致不一致的。使用NDB API可以从中丢弃一个或多个索引的表将不再可通过MySQL在此类操作之后使用。在此事件中,必须删除表,然后使用MySQL重新创建,使其可以再次访问MySQL。
-
方法
-
ndbdictionary.
本身没有公共实例方法,只有用于与之合作的静态方法NdbRecord
对象。操作不使用NdbRecord
是通过什么方式完成的ndbdictionary.
子类实例方法。的公共方法如下表所示ndbdictionary.
以及每种方法的目的或使用:
表2.36 NDBDictionary类方法和描述
-
类型
-
NdbDictionary定义了两个数据结构,列在这里:
NdbDictionary: AutoGrowSpecification
摘要
介绍设备的相关信息AutoGrowSpecification
数据结构。
-
父类
-
ndbdictionary.
-
描述
-
这AutoGrowSpecification
数据结构是否定义在ndbdictionary.
类的一些方法的参数或返回值表空间
和LogfileGroup
课程。
-
成员
-
AutoGrowSpecification
是否具有下表所示的成员:
表2.37 ndbdictionary :: autogrowspecification数据结构成员名称和描述
的名字 |
描述 |
min_free |
??? |
max_size |
??? |
文件大小 |
??? |
filename_pattern |
??? |
NdbDictionary: getEmptyBitmask ()
-
描述
-
返回一个空列的存在位掩码,可以与任何一起使用NdbRecord
指明没有NdbRecord
列将包含在操作中。
-
签名
-
静态const unsigned char * getEmptybitmask(空白)
-
参数
-
没有一个。
-
返回值
-
一个空的位掩码。
ndbdictionary :: getFirstattrid()
-
描述
-
获取由此指定的第一个属性IDNdbRecord
对象。回报错误的
如果没有指定属性ID。
-
签名
-
静态BOOL GETFIRSTATTRIT(CONST NDBRecord *记录, Uint32&firstAttrId)
-
参数
-
指向一个指针NdbRecord
并引用属性(firstAttrID
)。
-
返回值
-
布尔错误的
,当无法获取到属性ID时。
NdbDictionary: getNextAttrId ()
-
描述
-
获取指定的下一个属性IDNdbRecord
对象,后跟传入的属性ID。回报错误的
当没有更多要返回的属性id时。
-
签名
-
getNextAttrId (const NdbRecord*记录, Uint32&attrId)
-
参数
-
指向一个指针NdbRecord
以及对属性ID的引用。
-
返回值
-
布尔错误的
,当无法获取到属性ID时。
ndbdictionary :: getnullbitOffset()
-
描述
-
从启动时获取给定属性ID的NULL位的偏移量NdbRecord
排。回报错误的
如果属性ID不存在。
-
签名
-
gettnullbitoffset (const NdbRecord*记录, Uint32attrId, Uint32&字节, Uint32&少量)
-
参数
-
一个NdbRecord
记录
在其中获取给定属性ID的空白位偏移量(attrId
)。偏移量表示为字节数(字节
)加上最后一个字节内的一些位(少量
)。
-
返回值
-
布尔错误的
如果不存在具有给定ID的属性。
NdbDictionary: getOffset ()
-
描述
-
获取给定属性ID的存储从开始的偏移量NdbRecord
排。回报错误的
如果不存在属性ID
-
签名
-
静态BOOL GetOffset(Const Ndbrecord *记录, Uint32attrId, Uint32&抵消)
-
参数
-
这抵消
指定属性ID的存储开始NdbRecord
排。
-
返回值
-
布尔错误的
,如果找不到属性ID。
NdbDictionary: getRecordIndexName ()
-
描述
-
获取名称指数
对象NdbRecord
是指。
-
签名
-
static const char * getRecordIndexName(const ndbrecord *记录)
-
参数
-
指向的指针NdbRecord
为它取名字。
-
返回值
-
姓名(如果有的话)。否则,或者如果NdbRecord
对象不属于IndexAccess
类型,此方法返回null。
NdbDictionary: getRecordRowLength ()
-
描述
-
获取存储一行数据所需的字节数如下所述NdbRecord
传递给此方法的结构。
-
签名
-
static Uint32 getRecordRowLength (const NdbRecord* . getRecordRowLength)记录)
-
参数
-
一个NdbRecord
对象。
-
返回值
-
每行所需的字节数。
ndbdictionary :: getRecordTablename()
-
描述
-
类的表对象的名称NdbRecord
是指。如果记录不是,则此方法返回nullTableAccess
。
-
签名
-
static const char* getRecordTableName (const NdbRecord* . getRecordTableName)记录)
-
参数
-
这记录
(NdbRecord
对象)用于获取表名。
-
返回值
-
表名,如果是,则为空NdbRecord
对象的类型不是TableAccess
。
ndbdictionary :: getRecordtype()
-
描述
-
类的类型NdbRecord
对象通过。
-
签名
-
getRecordType (const NdbRecord* record):
-
参数
-
一个NdbRecord
对象。
-
返回值
-
这RecordType
的NdbRecord
(IndexAccess
或TableAccess
)。
NdbDictionary: getValuePtr ()
-
描述
-
通过查找存储在NdbRecord对象中的列的偏移量并返回行位置和偏移量的总和,返回指向属性ID指定的存储数据开始的指针。
-
签名
-
该方法同时提供row-const和non-row-const版本:
static const char* getValuePtr (const NdbRecord* . getValuePtr)记录, const char *行, Uint32attrIdstatic char* getValuePtr (const NdbRecord* .记录,字符*行, Uint32attrId)
-
参数
-
指向一个指针NdbRecord
描述行格式的对象,一个指向行起始数据的指针(常量
在该方法的const版本中),以及列的属性ID,
-
返回值
-
指向行中属性开始的指针。如果属性不属于该属性,则为nullNdbRecord
定义。
-
描述
-
指示给定列的空位是否设置为真正的
或错误的
。从传递的情况下获得与行指针相关的空位的位置NdbRecord
对象。属性的一部分,如果该列不可为空,或者该列不是NdbRecord
定义,方法返回错误的
。
-
签名
-
const NdbRecord* . null (NdbRecord* . null)记录, const char *行, Uint32attrId)
-
参数
-
指向一个指针NdbRecord
对象描述行格式、指向行数据开始的指针以及要检查的列的属性ID。
-
返回值
-
布尔真正的
如果属性ID存在于此NdbRecord
,可为空,并设置该行的空位;否则,布尔错误的
。
NDBDictionary :: Recordspecification.
介绍设备的相关信息RecordSpecification
结构。
-
父类
-
ndbdictionary.
-
描述
-
此结构用于在创建时指定列和范围偏移量NdbRecord
对象。
-
成员
-
构成此结构的元素如下表所示:
表2.38 NdbDictionary::RecordSpecification属性,包含类型和描述
的名字 |
类型 |
描述 |
柱子 |
列 |
此条目描述的列(列的最大大小定义了行的字段大小)。即使在创建一个NdbRecord 对于索引,它必须指向从基础表获得的列,而不是从索引本身获得的列。 |
抵消 |
UINT32. |
数据从一行开始的偏移量。对于读取blob, blob句柄(ndbblob. ),而不是实际的Blob数据被写入行。这意味着必须至少有sizeof (NdbBlob *) 必须在行中可用。 |
nullbit_byte_offset |
UINT32. |
的字节的行开始处的偏移量零 少量。 |
nullbit_bit_in_byte |
UINT32. |
零 (鹿)。 |
nullbit_byte_offset
和nullbit_bit_in_byte
不用于非可用列。
有关更多信息,请参见2.3.22,“NdbRecord接口”。
NdbDictionary: setNull ()
-
描述
-
将给定列的空位设置为提供的值。null位的偏移量从传递的值中获得NdbRecord
对象。属性ID不是NdbRecord
,或者如果它不可以,则此方法返回错误(-1)。
-
签名
-
NdbRecord是NdbRecord的缩写记录,字符*行, Uint32attrIdbool,价值)
-
参数
-
指向的指针记录
(NdbRecord
描述行格式的对象;指向朝开始的指针行
数据;列的属性ID (attrId
);和价值
将空位设置为(真正的
或错误的
)。
-
返回值
-
成功返回0;返回-1如果attrId
不是部分记录
,或不可为空。