Condividi tramite


Funzione JetRenameTable

Si applica a: Windows | Windows Server

Funzione JetRenameTable

La funzione JetRenameTable può essere usata per modificare il nome di una tabella esistente.

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

Parametri

sesid

Sessione da usare per questa chiamata.

dbid

Database da usare per questa chiamata.

Szname

Nome corrente della tabella che verrà rinominata.

szNameNew

Nuovo nome per la tabella che verrà rinominata.

Valore restituito

Questa funzione restituisce il tipo di dati JET_ERR con uno dei codici restituiti seguenti. Per altre informazioni sugli errori ESE possibili, vedere Errori del motore di archiviazione estendibili e parametri di gestione degli errori.

Codice restituito

Descrizione

JET_errSuccess

Operazione riuscita.

JET_errClientRequestToStopJetService

Non è possibile completare l'operazione perché tutte le attività nell'istanza associata alla sessione non sono state interrotte in seguito a una chiamata a JetStopService.

JET_errInstanceUnavailable

Non è possibile completare l'operazione perché l'istanza associata alla sessione ha rilevato un errore irreversibile che richiede che l'accesso a tutti i dati venga revocato per proteggere l'integrità dei dati. Questo errore verrà restituito solo da Windows XP e versioni successive.

JET_errInvalidDatabase

Il database specificato non è valido.

Questo errore viene restituito solo in Windows 2000 quando viene tentata un'operazione di ridenominazione della tabella nel database temporaneo. JET_errInvalidDatabaseId viene restituito per questo caso nelle versioni successive.

JET_errInvalidDatabaseId

L'ID del database specificato non è valido.

JET_errInvalidName

Uno dei nomi di oggetti specificati non è valido. Tutti i nomi degli oggetti devono essere conformi allo stesso set di regole. Le regole sono le seguenti:

  • I nomi degli oggetti devono essere costituiti da caratteri ASCII.

  • I nomi degli oggetti devono essere almeno un carattere in lunghezza.

  • I nomi degli oggetti potrebbero non superare JET_cbNameMost (64) caratteri di lunghezza.

  • I nomi degli oggetti potrebbero non iniziare con uno spazio.

  • I nomi degli oggetti potrebbero non contenere caratteri di controllo ASCII (0x00 tramite 0x1F).

  • I nomi degli oggetti potrebbero non contenere un punto esclamativo (!), periodo (.), parentesi quadre sinistra ([) o parentesi destra (]) - una volta convalidato, solo la parte della stringa fino al primo spazio (se presente) verrà usata per il nome dell'oggetto. Ciò significa che i nomi degli oggetti potrebbero non contenere uno spazio.

JET_errInvalidParameter

Uno dei parametri forniti contiene un valore imprevisto o contiene un valore che non ha senso quando si combina con il valore di un altro parametro. Questo può verificarsi per JetRenameTable quando:

  • szName è NULL.

  • szNameNew è NULL.

JET_errNotInitialized

Non è possibile completare l'operazione perché l'istanza associata alla sessione non è ancora stata inizializzata.

JET_errObjectNotFound

Questa tabella specificata non esiste per questo database.

JET_errRestoreInProgress

Non è possibile completare l'operazione perché un'operazione di ripristino è in corso nell'istanza associata alla sessione.

JET_errSessionSharingViolation

La stessa sessione non può essere usata contemporaneamente per più thread. Questo errore verrà restituito solo da Windows XP e versioni successive.

JET_errTermInProgress

Non è possibile completare l'operazione perché l'istanza associata alla sessione viene arrestata.

JET_errTransReadOnly

Impossibile eseguire un aggiornamento all'interno dell'ambito di una transazione di sola lettura. Una transazione di sola lettura è una transazione avviata usando una chiamata a JetBeginTransaction2 con JET_bitTransactionReadOnly.

Questo errore verrà restituito solo da Windows XP e versioni successive.

In caso di esito positivo, il nome della tabella specificata nel database specificato viene modificato definitivamente nel nuovo nome.

In caso di errore, non verrà eseguita alcuna modifica allo stato del database.

Requisiti

Requisito Valore

Client

Richiede Windows Vista, Windows XP o Windows 2000 Professional.

Server

Richiede Windows Server 2008, Windows Server 2003 o Windows 2000 Server.

Intestazione

Dichiarato in Esent.h.

Libreria

Usare ESENT.lib.

DLL

Richiede ESENT.dll.

Unicode

Implementato come JetRenameTableW (Unicode) e JetRenameTableA (ANSI).

Vedere anche

JET_DBID
JET_ERR
JET_SESID
JetBeginTransaction2