Share via


Função JetRenameTable

Aplica-se a: Windows | Windows Server

Função JetRenameTable

A função JetRenameTable pode ser usada para alterar o nome de uma tabela existente.

    JET_ERR JET_API JetRenameTable(
      __in          JET_SESID sesid,
      __in          JET_DBID dbid,
      __in          const tchar* szName,
      __in          const tchar* szNameNew
    );

Parâmetros

sesid

A sessão a ser usada para essa chamada.

dbid

O banco de dados a ser usado para essa chamada.

szName

O nome atual da tabela que será renomeada.

szNameNew

O novo nome da tabela que será renomeada.

Valor Retornado

Essa função retorna o tipo de dados JET_ERR com um dos seguintes códigos de retorno. Para obter mais informações sobre os possíveis erros do ESE, consulte Erros extensíveis do mecanismo de armazenamento e parâmetros de tratamento de erros.

Código de retorno

Descrição

JET_errSuccess

A operação foi concluída com sucesso.

JET_errClientRequestToStopJetService

Não é possível concluir a operação porque todas as atividades na instância associada à sessão cessaram como resultado de uma chamada para JetStopService.

JET_errInstanceUnavailable

Não é possível concluir a operação porque a instância associada à sessão encontrou um erro fatal que exige que o acesso a todos os dados seja revogado para proteger a integridade desses dados. Esse erro só será retornado pelo Windows XP e versões posteriores.

JET_errInvalidDatabase

O banco de dados especificado era inválido.

Esse erro só é retornado no Windows 2000 quando uma operação de renomeação de tabela é tentada no banco de dados temporário. JET_errInvalidDatabaseId é retornado para esse caso em versões posteriores.

JET_errInvalidDatabaseId

A ID do banco de dados especificada era inválida.

JET_errInvalidName

Um dos nomes de objeto especificados era inválido. Todos os nomes de objeto devem estar em conformidade com o mesmo conjunto de regras. Essas regras são as seguintes:

  • Os nomes de objeto devem ser compostos por caracteres ASCII.

  • Os nomes de objeto devem ter pelo menos um caractere de comprimento.

  • Os nomes de objetos não podem exceder JET_cbNameMost (64) caracteres de comprimento.

  • Os nomes de objetos podem não começar com um espaço.

  • Os nomes de objeto podem não conter caracteres de controle ASCII (0x00 por meio de 0x1F).

  • Os nomes de objeto podem não conter um ponto de exclamação (!), ponto (.), caractere de colchete esquerdo ([) ou colchete direito (]) - uma vez validado, somente a parte da cadeia de caracteres até o primeiro espaço (se houver) será usada para o nome do objeto. Isso significa efetivamente que os nomes de objeto também podem não conter um espaço.

JET_errInvalidParameter

Um dos parâmetros fornecidos continha um valor inesperado ou continha um valor que não fazia sentido quando combinado com o valor de outro parâmetro. Isso pode acontecer para JetRenameTable quando:

  • szName é NULL.

  • szNameNew é NULL.

JET_errNotInitialized

Não é possível concluir a operação porque a instância associada à sessão ainda não foi inicializada.

JET_errObjectNotFound

Esta tabela especificada não existe para esse banco de dados.

JET_errRestoreInProgress

Não é possível concluir a operação porque uma operação de restauração está em andamento na instância associada à sessão.

JET_errSessionSharingViolation

A mesma sessão não pode ser usada para mais de um thread ao mesmo tempo. Esse erro só será retornado pelo Windows XP e versões posteriores.

JET_errTermInProgress

Não é possível concluir a operação porque a instância associada à sessão está sendo desligada.

JET_errTransReadOnly

Uma atualização não pode ser feita enquanto estiver dentro do escopo de uma transação somente leitura. Uma transação somente leitura é uma transação que foi iniciada usando uma chamada para JetBeginTransaction2 com JET_bitTransactionReadOnly.

Esse erro só será retornado pelo Windows XP e versões posteriores.

Em caso de êxito, o nome da tabela especificada no banco de dados fornecido é alterado permanentemente para o novo nome.

Em caso de falha, nenhuma alteração no estado do banco de dados ocorrerá.

Requisitos

Requisito Valor

Cliente

Requer Windows Vista, Windows XP ou Windows 2000 Professional.

Servidor

Requer o Windows Server 2008, o Windows Server 2003 ou o Windows 2000 Server.

Cabeçalho

Declarado em Esent.h.

Biblioteca

Use ESENT.lib.

DLL

Requer ESENT.dll.

Unicode

Implementado como JetRenameTableW (Unicode) e JetRenameTableA (ANSI).

Consulte Também

JET_DBID
JET_ERR
JET_SESID
JetBeginTransaction2