Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
gäller för: Windows | Windows Server
JetSetColumns-funktion
JetSetColumns-funktionen liknar JetSetColumn, men tillåter ett program att ange flera kolumnvärden i en enda åtgärd. En matris med JET_SETCOLUMN strukturer används för att beskriva den uppsättning kolumnvärden som ska anges och för att beskriva indatabuffertar för varje kolumnvärde som ska anges.
JET_ERR JET_API JetSetColumns(
__in JET_SESID sesid,
__in JET_TABLEID tableid,
__in_out_opt JET_SETCOLUMN* psetcolumn,
__in unsigned long csetcolumn
);
Parameterar
sesid
Sessionen som ska användas för det här anropet.
tableid
Markören som ska användas för det här anropet.
psetcolumn
En pekare till en matris med en eller flera JET_SETCOLUMN strukturer. Varje struktur innehåller beskrivningar av vilket kolumnvärde som ska anges och varifrån kolumndata ska anges.
csetcolumn
Antalet JET_SETCOLUMN strukturer i matrisen som anges av psetcolumn.
Returvärde
Den här funktionen returnerar JET_ERR-datatypen med någon av följande returkoder. Mer information om möjliga ESE-fel finns i Extensible Storage Engine Errors and Error Handling Parameters (Utökningsbara lagringsmotorfel och felhanteringsparametrar).
Returkod |
Beskrivning |
|---|---|
JET_errBadColumnId |
Det angivna kolumn-ID:t ligger utanför de juridiska gränserna för ett kolumn-ID. |
JET_errClientRequestToStopJetService |
Det går inte att slutföra åtgärden eftersom all aktivitet på den instans som är associerad med sessionen har upphört till följd av ett anrop till JetStopService. |
JET_errColumnIllegalNull |
Samma som JET_errNullInvalid. |
JET_errColumnNotFound |
Kolumnen som beskrivs av det angivna columnid finns inte i tabellen. |
JET_errColumnNotUpdatable |
Ett ogiltigt försök gjordes att uppdatera ett långt värde under en ursprunglig uppdateringsåtgärd för att ta bort en infogningskopia. |
JET_errColumnTooBig |
Angivna kolumnvärdedata som anges i indatabufferten överskrider storleksbegränsningen, antingen naturlig för en kolumn med fast längd eller konfigurerad för text med fast längd eller binära kolumner. Det här felet returneras också när du skickar mer än 1 024 byte data för en lång kolumn och anger flaggan JET_bitSetIntrinsicLV. |
JET_errInstanceUnavailable |
Det går inte att slutföra åtgärden eftersom den instans som är associerad med sessionen har påträffat ett allvarligt fel som kräver att åtkomsten till alla data återkallas för att skydda dataintegriteten. Det här felet returneras endast av Windows XP och senare versioner. |
JET_errInvalidBufferSize |
Datastorleken för det angivna kolumnvärdet matchar inte det som är naturligt för datatypen fast längd. |
JET_errInvalidColumnType |
Ett olagligt försök gjordes att uppdatera en automatisk inkrementell kolumn under en infognings- eller uppdateringsåtgärd, eller att uppdatera en versionskolumn under en ersättningsåtgärd. |
JET_errInvalidgrbit |
De angivna alternativen är okända eller en otillåten kombination av kända bitinställningar. |
JET_errInvalidParameter |
Angiven psetinfo-cbStruct> är inte en giltig storlek för JET_SETINFO struktur. |
JET_errMultiValuedDuplicate |
Åtgärden set column försökte skapa ett duplicerat värde och angav antingen JET_bitSetUniqueMultiValues eller JET_bitSetUniqueNormalizedMultiValues. |
JET_errNotInitialized |
Det går inte att slutföra åtgärden eftersom den instans som är associerad med sessionen inte har initierats ännu. |
JET_errNotInTransaction |
Ett olagligt försök gjordes att uppdatera ett långt kolumnvärde när den anropande sessionen inte fanns i en transaktion. |
JET_errNullInvalid |
Ett olagligt försök gjordes att ange en icke-NULL-kolumn till NULL. |
JET_errRecordTooBig |
Kolumnvärdet kunde inte anges till värdet i indatabufferten eftersom det skulle ha gjort att posten överskrider sin storleksbegränsning för sidan. Kolumner av typen JET_coltypLongText eller JET_coltypLongBinary kan lagras separat från återstående postdata. Andra kolumner måste dock lagras med posten och kan orsaka att poststorleksbegränsningen överskrids. Även långa kolumner kräver 5 byte utrymme i posten som en länkning och även detta kan leda till att JET_errRecordTooBig returneras. |
JET_errRestoreInProgress |
Det går inte att slutföra åtgärden eftersom en återställningsåtgärd pågår på den instans som är associerad med sessionen. |
JET_errSessionSharingViolation |
Samma session kan inte användas för fler än en tråd samtidigt. Det här felet returneras endast av Windows XP och senare versioner. |
JET_errTermInProgress |
Det går inte att slutföra åtgärden eftersom den instans som är associerad med sessionen stängs av. |
JET_errUpdateNotPrepared |
Markören håller för närvarande inte på att antingen infoga en ny post eller uppdatera en befintlig post. |
JET_wrnColumnMaxTruncated |
Kolumnvärdet i indatabufferten överskred den maximala konfigurerade längden för en kolumn med variabel längd och trunkerades. |
Vid lyckat resultat anges den önskade delen av kolumnvärdet för varje kolumn som beskrivs i psetcolumns med data kopierade från indatabufferten. Kolumndatauppsättningen kan ha trunkerats om den överskred den maximala längd som angetts för en kolumn med variabel längd.
Vid fel lämnas markörens plats oförändrad och inga kolumnvärdedata uppdateras i kopieringsbufferten.
Anmärkningar
Om en enskild kolumnåtgärd returnerar ett fel returnerar hela JetSetColumns-åtgärden ett fel. Varningar returneras i allmänhet i psetcolumns-error> och inte i returkoden från den här funktionen. Men om den sista kolumnuppsättningen har en varning returneras den här varningen från Själva JetSetColumns .
Kravspecifikation
| Krav | Värde |
|---|---|
Klient |
Kräver Windows Vista, Windows XP eller Windows 2000 Professional. |
Server |
Kräver Windows Server 2008, Windows Server 2003 eller Windows 2000 Server. |
Rubrik |
Deklarerad i Esent.h. |
Bibliotek |
Använd ESENT.lib. |
DLL |
Kräver ESENT.dll. |
Se även
JET_COLTYP
JET_ERR
JET_SESID
JET_TABLEID
JET_SETCOLUMN
JetRetrieveColumns
JetSetColumn