Partilhar via


Campos descritores para colunas constituintes do parâmetro com valor de tabela

Os campos descritores do parâmetro com valor de tabela descritos nesta seção são manipulados usando SQLSetDescField e SQLSetDescField com o identificador para o IPD (Descritor de Parâmetro de Implementação).

Comentários

SQL_DESC_AUTO_UNIQUE_VALUE é usado para parâmetros com valor de tabela, e também com outros recursos.

Nome do atributo

Tipo

Descrição

SQL_DESC_AUTO_UNIQUE_VALUE

SQLINTEGER

SQL_TRUE indica que esta coluna é uma coluna de identidade.

O SQL Server pode usar estas informações para otimizar desempenho, mas aplicativos não são requeridos para defini-las para colunas de identidade.

Os seguintes atributos são adicionado a todos os tipos de parâmetros no APD (Descritor de Parâmetro de Aplicativo) e no IPD:

Nome do atributo

Tipo

Descrição

SQL_CA_SS_COLUMN_COMPUTED

SQLSMALLINT

SQL_TRUE indica que essa coluna é computada.

O SQL Server pode usar estas informações para otimizar o desempenho, mas aplicativos não são requeridos para defini-las para colunas computadas.

Este atributo é ignorado para associações que não são colunas de parâmetro com valor de tabela.

SQL_CA_SS_COLUMN_IN_UNIQUE_KEY

SQLSMALLINT

SQL_TRUE indica que uma coluna de parâmetro com valor de tabela participa de uma chave exclusiva. Isto pode resultar em melhor desempenho de consulta. Este atributo é ignorado para associações que não são colunas de parâmetro com valor de tabela.

SQL_CA_SS_COLUMN_SORT_ORDER

SQLSMALLINT

Indica a ordem de classificação de uma coluna de parâmetro com valor de tabela. Isto pode resultar em melhor desempenho de consulta. Este atributo é ignorado para associações que não são colunas de parâmetro com valor de tabela. Os seguintes valores são possíveis:

  • SQL_SS_ASCENDING_ORDER

  • SQL_SS_DESCENDING_ORDER

  • SQL_SS_ORDER_UNSPECIFIED

Valores diferentes de SQL_SS_ASCENDING_ORDER e SQL_SS_DESCENDING_ORDER geram um erro com SQLSTATE HY024 e a mensagem 'Valor de atributo inválido' e são tratados como SQL_SS_ORDER_UNSPECIFIED, que é o valor padrão para este atributo.

SQL_CA_SS_COLUMN_SORT_ORDINAL

SQLSMALLINT

Indica o ordinal de uma coluna de parâmetro com valor de tabela no conjunto de colunas que definem a ordenação global para um parâmetro com valor de tabela. Isto pode resultar em melhor desempenho de consulta. Este atributo é ignorado para associações que não são colunas de parâmetro com valor de tabela. Ordinais de classificação iniciam em 1. Um valor 0, o padrão, indica que uma coluna de parâmetro com valor de tabela não tem ordenação de coluna.

SQL_CA_SS_COLUMN_HAS_DEFAULT_VALUE

SQLSMALLINT

Indica se todas as linhas no parâmetro com valor de tabela terão o valor padrão para esta coluna. Para parâmetros com valor de tabela, não é possível selecionar o valor padrão em uma base linha por linha. Um valor SQL_FALSE indica que as linhas terão valores não padrão. Esse é o valor padrão. Um valor SQL_TRUE indica que esta coluna terá valores padrão para todas as linhas.

Se definido como SQL_TRUE, nenhum dos dados será enviado ao servidor.

Este campo também poderá ser usado com identidade ou colunas computadas se os valores de coluna não forem requeridos para processamento de servidor.

Estes atributos só são válidos para colunas de parâmetro com valor de tabela. Eles são ignorados para outros parâmetros.

Se SQL_CA_SS_COL_HAS_DEFAULT_VALUE for definido para uma coluna de parâmetro com valor de tabela, SQL_DESC_DATA_PTR para essa coluna deverá ser um ponteiro nulo. Caso contrário, SQLExecute ou SQLExecDirect retornarão SQL_ERROR. Um registro de diagnóstico será gerado com SQLSTATE=07S01 e a mensagem "Uso inválido do parâmetro padrão para o parâmetro <p>, coluna <c>", em que <p> é o ordinal do parâmetro e <c> é o ordinal da coluna.

Consulte também

Conceitos