JetCreateIndex 函数

适用于:Windows |Windows服务器

JetCreateIndex 函数

JetCreateIndex 函数可用于在可扩展存储引擎 (ESE) 数据库中创建数据索引,可用于快速查找特定数据。

    JET_ERR JET_API JetCreateIndex(
      __in          JET_SESID sesid,
      __in          JET_TABLEID tableid,
      __in          JET_PCSTR szIndexName,
      __in          JET_GRBIT grbit,
      __in          const tchar* szKey,
      __in          unsigned long cbKey,
      __in          unsigned long lDensity
    );

参数

sesid

用于特定 API 调用的数据库会话上下文。

tableid

将为其创建索引的表。

szIndexName

指向一个 null 终止字符串的指针,该字符串指定要创建的索引的名称。

索引名称必须符合以下准则:

  • 它必须包含的字符数必须少于JET_cbNameMost,不包括终止 null 字符。

  • 它必须仅包含以下类别中的字符:0 到 9、A 到 Z、a 到 z 和除“! (感叹号) 之外的所有标点字符, ”,“ (逗号) 、”[“ (左括号) 和”]“ (右括号) ,即 ASCII 字符0x20、0x22 0x2d、0x2f 0x5a、0x5c和0x5d 0x7f。

  • 它不得以空格开头。

  • 它必须至少包含一个非空格字符。

grbit

一组位,其中包含要用于特定调用的选项。 此参数可以包含 JET_INDEXCREATE 结构中找到的零个或多个选项。

szKey

指向以 null 分隔的标记的双 null 终止字符串的指针。

有关此参数的详细信息,请参阅 JET_INDEXCREATE 结构。

cbKey

szKey 参数的长度(以字节为单位)包括两个终止 null 字符。

lDensity

初始索引 B+ 树的百分比密度。

有关此参数的详细信息,请参阅 JET_INDEXCREATE 结构。

返回值

此函数使用下表中列出的返回代码之一返回 JET_ERR 数据类型。 有关可能的 ESE 错误的详细信息,请参阅可扩展存储引擎错误错误处理参数

返回代码

含义

JET_errSuccess

操作已成功完成。

有关 JetCreateIndex 函数可返回的其他错误的列表,请参阅 JetCreateIndex2

注解

调用 JetCreateIndex 函数与调用 JetCreateIndex2 函数相同,该函数具有与 JetCreateIndex 参数相同的设置的JET_INDEXCREATE结构,而 cIndexCreate 参数等于 1。 对于在 JetCreateIndex 中没有相应参数的JET_INDEXCREATE结构的字段,假定值为 0。

请注意, JetCreateIndex 已被 JetCreateIndex2 取代。

要求

要求

客户端

需要Windows Vista、Windows XP 或 Windows 2000 Professional。

服务器

需要Windows Server 2008、Windows Server 2003 或 Windows 2000 Server。

标头

在 Esent.h 中声明。

使用 ESENT.lib。

DLL

需要ESENT.dll。

Unicode

实现为 JetCreateIndexW (Unicode) 和 JetCreateIndexA (ANSI) 。

另请参阅

JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JET_INDEXCREATE
JetCreateIndex2
JetCreateTableColumnIndex
JetCreateTableColumnIndex2