Struttura JET_SETCOLUMN
Si applica a: Windows | Windows Server
Struttura JET_SETCOLUMN
La struttura JET_SETCOLUMN contiene parametri di input e output per JetSetColumns. I campi nella struttura descrivono il valore della colonna da impostare, come impostarlo e dove ottenere i dati del set di colonne.
typedef struct {
JET_COLUMNID columnid;
const void* pvData;
unsigned long cbData;
JET_GRBIT grbit;
unsigned long ibLongValue;
unsigned long itagSequence;
JET_ERR err;
} JET_SETCOLUMN;
Membri
columnid
Identificatore di colonna da impostare per una colonna.
pvData
Puntatore ai dati da impostare in una colonna.
cbData
Dimensioni dell'allocazione, in byte, a partire da pvData in byte.
grbit
Gruppo di bit che contengono le opzioni da usare per questa chiamata, che includono zero o più dei seguenti elementi.
Valore |
Significato |
---|---|
JET_bitSetAppendLV |
Aggiunge dati a una colonna di tipo JET_coltypLongText o JET_coltypLongBinary. Lo stesso comportamento può essere ottenuto determinando le dimensioni del valore lungo esistente e specificando ibLongValue in psetinfo. Tuttavia, è più semplice usare questo grbit, poiché non è necessario conoscere le dimensioni del valore di colonna esistente. |
JET_bitSetOverwriteLV |
Sostituisce il valore long esistente con i nuovi dati. Quando si usa questa opzione, è come se il valore lungo esistente sia stato impostato su 0 (zero) lunghezza prima di impostare i nuovi dati. |
JET_bitSetSizeLV |
Interpreta il buffer di input come numero intero di byte da impostare come lunghezza del valore lungo descritto dall'id colonna specificato e, se specificato, il numero di sequenza in psetinfo-itagSequence>. Se le dimensioni specificate sono maggiori del valore della colonna esistente, la colonna verrà estesa con 0s. Se le dimensioni sono inferiori al valore della colonna esistente, il valore verrà troncato. |
JET_bitSetZeroLength |
Imposta un valore su lunghezza zero. In genere, un valore di colonna è impostato su NULL passando un cbMax pari a 0. Tuttavia, per alcuni tipi, ad esempio JET_coltypText, un valore di colonna può essere 0 lunghezza anziché NULL e questa opzione viene usata per distinguere tra NULL e 0 lunghezza. |
JET_bitSetSeparateLV |
Forza l'archiviazione di un valore lungo, colonne di tipo JET_coltypLongText o JET_coltypLongBinary, separatamente dal resto dei dati del record. Ciò si verifica normalmente quando le dimensioni del valore lungo impediscono l'archiviazione con i dati dei record rimanenti. Tuttavia, questa opzione può essere usata per forzare l'archiviazione separata del valore long. Si noti che i valori lunghi quattro byte di dimensioni o inferiori non possono essere forzati a essere separati. In questi casi, l'opzione viene ignorata. |
JET_bitSetUniqueMultiValues |
Applica valori distinti in una colonna multivalore. Questa opzione confronta i dati della colonna di origine, senza trasformazioni, con altri valori di colonna esistenti e viene restituito un errore se viene trovato un duplicato. Se questa opzione viene specificata, non è possibile JET_bitSetAppendLv, JET_bitSetOverwriteLV e JET_bitSetSizeLV. |
JET_bitSetUniqueNormalizedMultiValues |
Applica valori distinti in una colonna multivalore. Questa opzione confronta la trasformazione normalizzata della chiave dei dati della colonna con altri valori di colonna trasformati in modo analogo e viene restituito un errore se viene trovato un duplicato. Se questa opzione viene specificata, non è possibile JET_bitSetAppendLv, JET_bitSetOverwriteLV e JET_bitSetSizeLV. |
JET_bitSetRevertToDefaultValue |
Fa sì che la colonna restituisca il valore di colonna predefinito nelle operazioni di recupero successive della colonna. Tutti i valori di colonna esistenti vengono rimossi. Questa opzione è applicabile solo per le colonne con tag, sparse o multivalore. |
JET_bitSetIntrinsicLV |
Mantiene il valore lungo, le colonne di tipo JET_coltypLongText o JET_coltypeLongBinary, archiviate con i dati del record rimanenti, se possibile. In genere, le colonne lunghe vengono archiviate separatamente quando la lunghezza supera i 1024 byte o altrimenti la lunghezza del record supera la limitazione delle dimensioni della pagina. Tuttavia, se questa opzione è impostata, l'operazione imposta colonna avrà esito negativo con errore JET_errColumnTooBig anziché archiviare questo valore di colonna separato dai dati dei record rimanenti. |
ibLongValue
Offset del primo byte da recuperare da una colonna di tipo JET_coltypLongBinary o JET_coltypLongText.
itagSequence
Descrive il numero di sequenza di valore in una colonna multivalore. Un itagSequence pari a 0 indica che il set di valori di colonna deve essere aggiunto come nuova istanza di una colonna multivalore.
err
Codici di errore e avvisi restituiti dall'operazione di impostazione della colonna.
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. |