Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro: Windows | Windows Server
JetSetColumns – funkce
Funkce JetSetColumns je podobná chování jako JetSetColumn , ale umožňuje aplikaci nastavit více hodnot sloupců v jedné operaci. Pole JET_SETCOLUMN struktur slouží k popisu sady hodnot sloupců, které se mají nastavit, a k popisu vstupních vyrovnávacích pamětí pro každou hodnotu sloupce, která se má nastavit.
JET_ERR JET_API JetSetColumns(
__in JET_SESID sesid,
__in JET_TABLEID tableid,
__in_out_opt JET_SETCOLUMN* psetcolumn,
__in unsigned long csetcolumn
);
Parametry
sesid
Relace, která se má použít pro toto volání.
tableid
Kurzor, který se má použít pro toto volání.
psetcolumn
Ukazatel na pole jedné nebo více JET_SETCOLUMN struktur. Každá struktura obsahuje popisy, ze kterých hodnot sloupce se má nastavit a odkud získat data sloupce, která se mají nastavit.
csetcolumn
Počet JET_SETCOLUMN struktur v poli zadaném psetcolumn.
Návratová hodnota
Tato funkce vrátí datový typ JET_ERR s jedním z následujících návratových kódů. Další informace o možných chybách ESE naleznete v tématu Rozšiřitelné chyby modulu úložiště a parametry zpracování chyb.
Návratový kód |
Popis |
|---|---|
JET_errBadColumnId |
Zadané ID sloupce je mimo právní omezení ID sloupce. |
JET_errClientRequestToStopJetService |
Operaci není možné dokončit, protože veškerá aktivita instance přidružené k relaci přestala v důsledku volání JetStopService. |
JET_errColumnIllegalNull |
Stejné jako JET_errNullInvalid. |
JET_errColumnNotFound |
Sloupec popsaný daným id sloupce v tabulce neexistuje. |
JET_errColumnNotUpdatable |
Při pokusu o aktualizaci dlouhé hodnoty během operace odstranění původní aktualizace pro vložení kopírování došlo k neplatnému pokusu. |
JET_errColumnTooBig |
Data dané hodnoty sloupce zadaná ve vstupní vyrovnávací paměti překračují omezení velikosti pro sloupec s pevnou délkou nebo nakonfigurované pro text s pevnou délkou nebo binární sloupce. Tato chyba se také vrátí při předávání více než 1024 bajtů dat pro dlouhý sloupec a nastavení příznaku JET_bitSetIntrinsicLV. |
JET_errInstanceUnavailable |
Operaci není možné dokončit, protože instance přidružená k relaci zjistila závažnou chybu, která vyžaduje odvolání přístupu ke všem datům kvůli ochraně integrity těchto dat. Tato chyba bude vrácena pouze systémem Windows XP a novějšími verzemi. |
JET_errInvalidBufferSize |
Velikost dat dané hodnoty sloupce neodpovídá tomu, co je přirozené pro datový typ s pevnou délkou. |
JET_errInvalidColumnType |
Během operace vložení nebo aktualizace došlo k neplatnému pokusu o aktualizaci sloupce automatického přírůstku nebo aktualizace sloupce verze během operace nahrazení. |
JET_errInvalidgrbit |
Zadané možnosti jsou neznámé nebo neplatná kombinace známých nastavení bitů. |
JET_errInvalidParameter |
Daná psetinfo-cbStruct> není platná velikost pro JET_SETINFO strukturu. |
JET_errMultiValuedDuplicate |
Operace nastavení sloupce se pokusila vytvořit duplicitní hodnotu a zadala JET_bitSetUniqueMultiValues nebo JET_bitSetUniqueNormalizedMultiValues. |
JET_errNotInitialized |
Operaci není možné dokončit, protože instance přidružená k relaci ještě nebyla inicializována. |
JET_errNotInTransaction |
Byl proveden neplatný pokus o aktualizaci dlouhé hodnoty sloupce, když volání relace nebyla v transakci. |
JET_errNullInvalid |
Byl proveden neplatný pokus o nastavení sloupce bez hodnoty NULL na hodnotu NULL. |
JET_errRecordTooBig |
Hodnotu sloupce nelze nastavit na hodnotu ve vstupní vyrovnávací paměti, protože by způsobila, že záznam překročil omezení velikosti související s velikostí stránky. Sloupce typu JET_coltypLongText nebo JET_coltypLongBinary lze ukládat odděleně od zbývajících dat záznamů. Jiné sloupce však musí být uloženy se záznamem a mohou způsobit překročení omezení velikosti záznamu. Dokonce i dlouhé sloupce vyžadují 5 bajtů místa v záznamu jako propojení a to může také vést k JET_errRecordTooBig vrácení. |
JET_errRestoreInProgress |
Operaci není možné dokončit, protože probíhá operace obnovení u instance přidružené k relaci. |
JET_errSessionSharingViolation |
Stejnou relaci nelze použít pro více než jedno vlákno současně. Tato chyba bude vrácena pouze systémem Windows XP a novějšími verzemi. |
JET_errTermInProgress |
Operaci není možné dokončit, protože instance přidružená k relaci se vypíná. |
JET_errUpdateNotPrepared |
Kurzor v současné době není v procesu vložení nového záznamu nebo aktualizace existujícího záznamu. |
JET_wrnColumnMaxTruncated |
Hodnota sloupce ve vstupní vyrovnávací paměti překročila maximální nakonfigurovanou délku pro sloupec s proměnlivou délkou a byla zkrácena. |
V případě úspěchu se pro každý sloupec popsaný v psetcolumns nastaví požadovaná část hodnoty sloupce s daty zkopírovanými ze vstupní vyrovnávací paměti. Datová sada sloupců byla pravděpodobně zkrácena, pokud překročila maximální délku zadanou pro sloupec s proměnnou délkou.
Při selhání zůstane umístění kurzoru beze změny a v vyrovnávací paměti kopírování se neaktualizují žádná data hodnoty sloupce.
Poznámky
Pokud nějaká operace se sadou sloupců vrátí chybu, vrátí celá operace JetSetColumns chybu. Upozornění jsou obecně vrácena v psetcolumns-error>, a ne ve návratovém kódu z této funkce. Pokud má ale poslední sada sloupců upozornění, vrátí se toto upozornění ze samotné sady JetSetColumns .
Požadavky
| Požadavek | Hodnota |
|---|---|
Klient |
Vyžaduje systém Windows Vista, Windows XP nebo Windows 2000 Professional. |
Server |
Vyžaduje Systém Windows Server 2008, Windows Server 2003 nebo Windows 2000 Server. |
záhlaví |
Deklarováno v esent.h. |
Knihovna |
Použijte ESENT.lib. |
DLL knihovny |
Vyžaduje ESENT.dll. |
Viz také
JET_COLTYP
JET_ERR
JET_SESID
JET_TABLEID
JET_SETCOLUMN
JetRetrieveColumns
JetSetColumn