JetCreateIndex 函数

适用于: Windows |Windows Server

JetCreateIndex 函数

JetCreateIndex 函数使你能够在 Extensible Storage Engine (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 函数相同,其 JET_INDEXCREATE 结构包含与 JetCreateIndex 的参数相同的设置, cIndexCreate 参数等于 1。 对于在 JetCreateIndex 中没有相应参数的 JET_INDEXCREATE 结构的字段,假定值为 0。

请注意, JetCreateIndex2 已取代 JetCreateIndex2

要求

要求

客户端

需要 Windows Vista、Windows XP 或 Windows 2000 专业版。

服务器

需要 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