Estrutura JET_SETCOLUMN
Aplica-se a: Windows | Windows Server
Estrutura JET_SETCOLUMN
A estrutura JET_SETCOLUMN contém parâmetros de entrada e saída para JetSetColumns. Os campos na estrutura descrevem qual valor de coluna definir, como defini-lo e onde obter os dados do conjunto de colunas.
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;
Membros
Columnid
O identificador de coluna para uma coluna a ser definida.
pvData
Um ponteiro para os dados a serem definidos em uma coluna.
cbData
O tamanho da alocação, em bytes, começando em pvData em bytes.
grbit
Um grupo de bits que contém as opções a serem usadas para essa chamada, que incluem zero ou mais dos seguintes.
Valor |
Significado |
---|---|
JET_bitSetAppendLV |
Acrescenta dados a uma coluna do tipo JET_coltypLongText ou JET_coltypLongBinary. O mesmo comportamento pode ser obtido determinando o tamanho do valor longo existente e especificando ibLongValue em psetinfo. No entanto, é mais simples usar esse grbit, pois saber o tamanho do valor de coluna existente não é necessário. |
JET_bitSetOverwriteLV |
Substitui o valor longo existente pelos novos dados. Quando essa opção é usada, é como se o valor longo existente fosse definido como 0 (zero) de comprimento antes de definir os novos dados. |
JET_bitSetSizeLV |
Interpreta o buffer de entrada como um número inteiro de bytes a ser definido como o comprimento do valor longo descrito pelo columnid fornecido e, se fornecido, o número de sequência em psetinfo-itagSequence>. Se o tamanho fornecido for maior que o valor de coluna existente, a coluna será estendida com 0s. Se o tamanho for menor que o valor de coluna existente, o valor será truncado. |
JET_bitSetZeroLength |
Define um valor como comprimento zero. Normalmente, um valor de coluna é definido como NULL passando um cbMax de 0. No entanto, para alguns tipos, como JET_coltypText, um valor de coluna pode ter 0 comprimento em vez de NULL e essa opção é usada para diferenciar entre NULL e 0 comprimento. |
JET_bitSetSeparateLV |
Força um valor longo, colunas do tipo JET_coltypLongText ou JET_coltypLongBinary, a ser armazenado separadamente do restante dos dados de registro. Isso ocorre normalmente quando o tamanho do valor longo impede que ele seja armazenado com os dados de registro restantes. No entanto, essa opção pode ser usada para forçar o valor longo a ser armazenado separadamente. Observe que valores longos de quatro bytes de tamanho ou menores não podem ser forçados a serem separados. Nesses casos, a opção é ignorada. |
JET_bitSetUniqueMultiValues |
Impõe valores distintos em uma coluna de vários valores. Essa opção compara os dados da coluna de origem, sem transformações, com outros valores de coluna existentes e um erro será retornado se uma duplicata for encontrada. Se essa opção for fornecida, JET_bitSetAppendLv, JET_bitSetOverwriteLV e JET_bitSetSizeLV também não poderão ser dadas. |
JET_bitSetUniqueNormalizedMultiValues |
Impõe valores distintos em uma coluna de vários valores. Essa opção compara a transformação normalizada de chave de dados de coluna com outros valores de coluna existentes transformados da mesma forma e um erro será retornado se uma duplicata for encontrada. Se essa opção for fornecida, JET_bitSetAppendLv, JET_bitSetOverwriteLV e JET_bitSetSizeLV também não poderão ser dadas. |
JET_bitSetRevertToDefaultValue |
Faz com que a coluna retorne o valor de coluna padrão em operações subsequentes de recuperação de coluna. Todos os valores de coluna existentes são removidos. Essa opção só é aplicável a colunas marcadas, esparsas ou com valores múltiplos. |
JET_bitSetIntrinsicLV |
Mantém o valor longo, as colunas do tipo JET_coltypLongText ou JET_coltypeLongBinary, armazenadas com os dados de registro restantes, se possível. Normalmente, as colunas longas são armazenadas separadamente quando seu comprimento excede 1024 bytes ou, de outra forma, faz com que o comprimento do registro exceda a limitação de tamanho relacionado ao tamanho da página. No entanto, se essa opção for definida, a operação definir coluna falhará com o erro JET_errColumnTooBig em vez de armazenar esse valor de coluna separado dos dados de registro restantes. |
ibLongValue
O deslocamento para o primeiro byte a ser recuperado de uma coluna do tipo JET_coltypLongBinary ou JET_coltypLongText.
itagSequence
Descreve o número de sequência de valor em uma coluna de vários valores. Uma itagSequence de 0 indica que o conjunto de valores de coluna deve ser adicionado como uma nova instância de uma coluna de vários valores.
err
Códigos de erro e avisos retornados da operação de coluna set.
Requisitos
Requisito | Valor |
---|---|
Cliente |
Requer Windows Vista, Windows XP ou Windows 2000 Professional. |
Servidor |
Requer o Windows Server 2008, o Windows Server 2003 ou o Windows 2000 Server. |
Cabeçalho |
Declarado em Esent.h. |