Funzione JetSetColumnDefaultValue
Si applica a: Windows | Windows Server
Funzione JetSetColumnDefaultValue
La funzione JetSetColumnDefaultValue può essere usata per modificare il valore predefinito di una colonna esistente.
JET_ERR JET_API JetSetColumnDefaultValue(
__in JET_SESID sesid,
__in JET_DBID dbid,
__in JET_PCSTR szTableName,
__in JET_PCSTR szColumnName,
__in const void* pvData,
__in const unsigned long cbData,
__in const JET_GRBIT grbit
);
Parametri
sesid
Sessione da usare per questa chiamata.
dbid
Database da usare per questa chiamata.
szTableName
Nome della tabella contenente la colonna interessata.
szColumnName
Nome della colonna il cui valore predefinito verrà modificato.
pvData
Buffer di input contenente il nuovo valore predefinito.
cbData
Dimensione del buffer di input contenente il nuovo valore predefinito.
grbit
Riservato per utilizzi futuri.
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_errColumnIllegalNull |
Uguale a JET_errNullInvalid. |
JET_errColumnInUse |
Questa colonna specificata è attualmente in uso da un indice. JetSetColumnDefaultValue non può modificare il valore predefinito di una colonna a cui viene fatto riferimento nella definizione di un indice. Ciò è dovuto al fatto che ciò potrebbe modificare il contenuto dell'indice. |
JET_errColumnNotFound |
Questa colonna specificata non esiste per questa tabella. |
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_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:
|
JET_errNotInitialized |
Non è possibile completare l'operazione perché l'istanza associata alla sessione non è ancora stata inizializzata. |
JET_errNullInvalid |
Impossibile impostare la colonna su NULL. Ciò accade per JetSetColumnDefaultValue quando:
Pertanto, non è possibile impostare il valore predefinito di una colonna (indietro) su NULL o su un valore di lunghezza zero. |
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_errTableInUse |
Questa tabella specificata viene usata da un'altra sessione. JetSetColumnDefaultValue richiede l'accesso esclusivo a una tabella per modificare il valore predefinito della colonna per le versioni precedenti a Windows Server 2003. |
JET_errTermInProgress |
Non è possibile completare l'operazione perché l'istanza associata alla sessione viene arrestata. |
JET_errTransReadOnly |
Non è possibile tentare un aggiornamento quando 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. |
JET_errWriteConflict |
Un'altra sessione ha precedentemente bloccato il record per l'aggiornamento. L'aggiornamento tentato da questa sessione avrà esito negativo. |
In caso di esito positivo, il valore predefinito della colonna specificata nella tabella specificata nel database specificato viene modificato definitivamente nel nuovo valore predefinito.
In caso di errore, non verrà eseguita alcuna modifica allo stato del database.
Commenti
Non è possibile modificare il valore predefinito di una colonna in una tabella modello.
Il motore di database tronca automaticamente il valore predefinito di una colonna a 255 byte per colonne binarie lunghe e lunghe.
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 JetSetColumnDefaultValueW (Unicode) e JetSetColumnDefaultValueA (ANSI). |
Vedere anche
JET_DBID
JET_ERR
JET_GRBIT
JET_SESID
JetBeginTransaction2
JetStopService