Condividi tramite


srv_describe (API Stored procedure estesa)

Nota importanteImportante

Questa caratteristica verrà rimossa a partire da una delle prossime versioni di Microsoft SQL Server. Non utilizzare questa caratteristica in un nuovo progetto di sviluppo e modificare non appena possibile le applicazioni in cui è attualmente implementata. Utilizzare invece la funzionalità di integrazione con CLR.

Definisce il nome della colonna e i tipi di dati di origine e di destinazione per una colonna specifica in una riga.

Sintassi


int srv_describe (
SRV_PROC *
srvproc
,
int
colnumber
,
DBCHAR *
column_name
,
int
namelen
,
DBINT
desttype
,
DBINT
destlen
,
DBINT
srctype
,
DBINT
srclen
,
void *
srcdata
);

Argomenti

  • srvproc
    Puntatore alla struttura SRV_PROC che rappresenta l'handle di una determinata connessione client, in questo caso il client che invia la riga. La struttura contiene tutte le informazioni utilizzate dalla libreria dell'API Stored procedure estesa per gestire le comunicazioni e i dati tra l'applicazione e il client.

  • colnumber
    Attualmente non supportato. Le colonne devono essere descritte in ordine. Tutte le colonne devono essere descritte prima che venga chiamato srv_sendrow.

  • column_name
    Specifica il nome della colonna a cui appartengono i dati. Questo parametro può essere NULL in quanto una colonna non deve necessariamente avere un nome.

  • namelen
    Specifica la lunghezza, espressa in byte, di column_name. Se namelen è SRV_NULLTERM, column_name deve essere con terminazione Null.

  • desttype
    Specifica il tipo di dati della colonna della riga di destinazione. Si tratta del tipo di dati inviato al client. È necessario specificarlo anche se i dati sono NULL. Per ulteriori informazioni, vedere Tipi di dati (API Stored procedure estesa).

  • destlen
    Specifica la lunghezza, espressa in byte, dei dati da inviare al client. Per tipi di dati a lunghezza fissa che non consentono i valori Null, destlen viene ignorato. Per tipi di dati a lunghezza variabile e a lunghezza fissa che consentono i valori Null, destlen specifica la lunghezza massima dei dati di destinazione.

  • srctype
    Specifica il tipo di dati dei dati di origine.

  • srclen
    Specifica la lunghezza, espressa in byte, dei dati di origine. Questo valore viene ignorato per i tipi di dati a lunghezza fissa.

  • srcdata
    Fornisce l'indirizzo dei dati di origine per una determinata colonna. Dopo essere stato chiamato, srv_sendrow cerca i dati relativi a colnumber in srcdata. È necessario quindi non liberarlo prima di una chiamata a srv_sendrow. L'indirizzo dei dati di origine può essere modificato tra una chiamata e l'altra a srv_sendrow tramite srv_setcoldata. La memoria allocata per srcdata non deve essere liberata fino a quando i dati della colonna non vengono sostituiti da un'altra chiamata a srv_setcoldata o fino alla chiamata a srv_senddone.

    Se desttype è SRVDECIMAL o SRVNUMERIC, il parametro srcdata deve essere un puntatore a una struttura DBNUMERIC o DBDECIMAL con i campi della precisione e della scala della struttura già impostati sui valori desiderati. È possibile utilizzare DEFAULTPRECISION per specificare una precisione predefinita e DEFAULTSCALE per specificare una scala predefinita.

Restituisce

Il numero della colonna descritta. La prima colonna è la colonna 1. Se si verifica un errore, viene restituito 0.

Osservazioni

La funzione srv_describe deve essere chiamata una volta per ogni colonna nella riga prima della prima chiamata a srv_sendrow. Le colonne di una riga possono essere descritte in qualsiasi ordine.

Per modificare il percorso e lunghezza dei dati di origine nelle righe della colonna prima dell'invio del set di risultati completo, utilizzare srv_setcoldata e srv_setcollen rispettivamente.

Per una descrizione dei tipi di dati e delle conversioni dei tipi di dati dell'API Stored procedure estesa, vedereTipi di dati (API Stored procedure estesa).

Se il nome della colonna nell'applicazione è in Unicode, è necessario convertirlo nella tabella codici multibyte del server prima di chiamare srv_describe. Per ulteriori informazioni, vedere Dati Unicode e tabelle codici del server.

Nota sulla sicurezzaNota sulla sicurezza

È necessario esaminare con attenzione il codice sorgente delle stored procedure estese e testare le DLL compilate prima di installarle in un server di produzione. Per informazioni sui test e sull'analisi di protezione, visitare questo sito Web Microsoft.