JetDeleteColumn2 函数

适用于: Windows |Windows Server

JetDeleteColumn2 函数

JetDeleteColumn2 函数从 ESE 数据库表中删除列,并启用要设置的 grbit 选项。

Windows XP:JetDeleteColumn2 在 Windows XP 中引入。

    JET_ERR JET_API JetDeleteColumn2(
      __in          JET_SESID sesid,
      __in          JET_TABLEID tableid,
      __in          const tchar* szColumnName,
      __in          const JET_GRBIT grbit
    );

参数

sesid

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

tableid

包含要删除的列的表。

szColumnName

要删除的列的名称。

grbit

一组指定以下选项的零个或多个位。

含义

JET_bitDeleteColumnIgnoreTemplateColumns

设置JET_bitDeleteColumIgnoreTemplateColumns将导致 API 仅尝试删除派生表中的列。 如果基表中存在该名称的列,则将忽略该列。

返回值

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

返回代码

说明

JET_errSuccess

操作已成功完成。

JET_errColumnInUse

列当前正在使用中。 索引当前可以使用它。

JET_errFixedDDL

尝试修改固定的 DDL。

JET_errFixedInheritedDDL

模板表中存在 szColumnName 中名为 的列,并且无法修改模板表的 DDL。

JET_errInvalidName

如果为 szColumnName 指定了错误的名称,可能会返回此值。

JET_errPermissionDenied

该表不可写。 如果数据库是在只读模式下打开的,则可能会返回此值。

JET_errTransReadOnly

该事务是只读事务。

备注

调用 JetDeleteColumn 与调用 JetDeleteColumn2 相同, grbit 设置为 0 (0) 。

要求

要求

客户端

需要 Windows Vista 或 Windows XP。

服务器

需要 Windows Server 2008 或 Windows Server 2003。

标头

在 Esent.h 中声明。

Library

使用 ESENT.lib。

DLL

需要ESENT.dll。

Unicode

实现为 JetDeleteColumn2W (Unicode) 和 JetDeleteColumn2A (ANSI) 。

另请参阅

JET_ERR
JET_GRBIT
JET_SESID
JET_TABLEID
JetDeleteColumn