Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a: Windows | Windows Server
Função JetSetColumns
A função JetSetColumns é semelhante em comportamento a JetSetColumn, mas permite que um aplicativo defina vários valores de coluna em uma única operação. Uma matriz de estruturas JET_SETCOLUMN é usada para descrever o conjunto de valores de coluna a serem definidos e para descrever buffers de entrada para cada valor de coluna a ser definido.
JET_ERR JET_API JetSetColumns(
__in JET_SESID sesid,
__in JET_TABLEID tableid,
__in_out_opt JET_SETCOLUMN* psetcolumn,
__in unsigned long csetcolumn
);
Parâmetros
Sesídeo
A sessão a ser usada para esta chamada.
TableID
O cursor a ser usado para esta chamada.
psetcolumn
Um ponteiro para uma matriz de uma ou mais estruturas JET_SETCOLUMN . Cada estrutura inclui descrições de qual valor de coluna definir e de onde obter dados de coluna para definir.
csetcolumn
O número de estruturas JET_SETCOLUMN na matriz dado por psetcolumn.
Valor de retorno
Esta função retorna o tipo de dados JET_ERR com um dos seguintes códigos de retorno. Para obter mais informações sobre os possíveis erros ESE, consulte Erros do mecanismo de armazenamento extensível e Parâmetros de tratamento de erros.
Código de retorno |
Descrição |
|---|---|
JET_errBadColumnId |
O ID da coluna fornecido está fora dos limites legais de um ID de coluna. |
JET_errClientRequestToStopJetService |
Não é possível concluir a operação porque toda a atividade na instância associada à sessão cessou como resultado de uma chamada para JetStopService. |
JET_errColumnIllegalNull |
O mesmo que JET_errNullInvalid. |
JET_errColumnNotFound |
A coluna descrita pelo columnid dado não existe na tabela. |
JET_errColumnNotUpdatable |
Foi feita uma tentativa ilegal de atualizar um valor longo durante uma operação de atualização original de exclusão de cópia inserida. |
JET_errColumnTooBig |
Os dados de valor de coluna fornecidos no buffer de entrada excedem a limitação de tamanho natural para uma coluna de comprimento fixo ou configurada para texto de comprimento fixo ou colunas binárias. Este erro também é retornado ao passar mais de 1024 bytes de dados para uma coluna longa e definir o sinalizador JET_bitSetIntrinsicLV. |
JET_errInstanceUnavailable |
Não é possível concluir a operação porque a instância associada à sessão encontrou um erro fatal que exige que o acesso a todos os dados seja revogado para proteger a integridade desses dados. Este erro só será devolvido pelo Windows XP e versões posteriores. |
JET_errInvalidBufferSize |
O tamanho dos dados do valor da coluna não corresponde ao que é natural para o tipo de dados de comprimento fixo. |
JET_errInvalidColumnType |
Foi feita uma tentativa ilegal de atualizar uma coluna de incremento automático durante uma operação de inserção ou atualização, ou de atualizar uma coluna de versão durante uma operação de substituição. |
JET_errInvalidgrbit |
As opções fornecidas são desconhecidas ou uma combinação ilegal de configurações de bits conhecidas. |
JET_errInvalidParameter |
O dado psetinfo-cbStruct> não é um tamanho válido para a estrutura JET_SETINFO . |
JET_errMultiValuedDuplicate |
A operação set column tentou criar um valor duplicado e especificou JET_bitSetUniqueMultiValues ou JET_bitSetUniqueNormalizedMultiValues. |
JET_errNotInitialized |
Não é possível concluir a operação porque a instância associada à sessão ainda não foi inicializada. |
JET_errNotInTransaction |
Foi feita uma tentativa ilegal de atualizar um valor de coluna longa quando a sessão de chamada não estava em uma transação. |
JET_errNullInvalid |
Foi feita uma tentativa ilegal para definir uma coluna não-NULL como NULL. |
JET_errRecordTooBig |
O valor da coluna não pôde ser definido como o valor no buffer de entrada porque isso teria feito com que o registro excedesse sua limitação de tamanho relacionada ao tamanho da página. As colunas do tipo JET_coltypLongText ou JET_coltypLongBinary podem ser armazenadas separadamente dos restantes dados de registo. No entanto, outras colunas devem ser armazenadas com o registro e podem fazer com que a limitação de tamanho do registro seja excedida. Mesmo colunas longas exigem 5 bytes de espaço dentro do registro como uma ligação e isso também pode levar a JET_errRecordTooBig serem retornadas. |
JET_errRestoreInProgress |
Não é possível concluir a operação porque uma operação de restauração está em andamento na instância associada à sessão. |
JET_errSessionSharingViolation |
A mesma sessão não pode ser usada para mais de um thread ao mesmo tempo. Este erro só será devolvido pelo Windows XP e versões posteriores. |
JET_errTermInProgress |
Não é possível concluir a operação porque a instância associada à sessão está sendo encerrada. |
JET_errUpdateNotPrepared |
O cursor não está atualmente no processo de inserção de um novo registro ou atualização de um registro existente. |
JET_wrnColumnMaxTruncated |
O valor da coluna no buffer de entrada excedeu o comprimento máximo configurado para uma coluna de comprimento variável e foi truncado. |
No sucesso, para cada coluna descrita nas psetcolumns, a parte desejada do valor da coluna é definida com dados copiados do buffer de entrada. O conjunto de dados da coluna pode ter sido truncado se excedeu o comprimento máximo especificado para uma coluna de comprimento variável.
Em caso de falha, o local do cursor é deixado inalterado e nenhum dado de valor de coluna é atualizado no buffer de cópia.
Observações
Se qualquer operação de coluna de conjunto individual retornar um erro, toda a operação JetSetColumns retornará um erro. Avisos, em geral, são retornados no psetcolumns-error> e não no código de retorno desta função. No entanto, se o último conjunto de colunas tiver um aviso, esse aviso será retornado do próprio JetSetColumns .
Requerimentos
| Requisito | Valor |
|---|---|
Cliente |
Requer Windows Vista, Windows XP ou Windows 2000 Professional. |
Servidor |
Requer Windows Server 2008, Windows Server 2003 ou Windows 2000 Server. |
Cabeçalho |
Declarado em Esent.h. |
Biblioteca |
Use ESENT.lib. |
DLL |
Requer ESENT.dll. |
Ver também
JET_COLTYP
JET_ERR
JET_SESID
JET_TABLEID
JET_SETCOLUMN
JetRetrieveColumns
JetSetColumn