Défilement et extraction de lignes
S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
Pour utiliser un curseur permettant le défilement, une application ODBC doit :
Définissez les fonctionnalités du curseur à l’aide de SQLSetStmtAttr.
Ouvrez le curseur à l’aide de SQLExecute ou DE SQLExecDirect.
Faites défiler et récupérez des lignes à l’aide de SQLFetch ou SQLFetchScroll.
SQLFetch et SQLFetchSroll peuvent extraire des blocs de lignes à la fois. Le nombre de lignes retournées est spécifié à l’aide de SQLSetStmtAttr pour définir le paramètre SQL_ATTR_ROW_ARRAY_SIZE.
Les applications ODBC peuvent utiliser SQLFetch pour extraire par le biais d’un curseur vers l’avant uniquement.
SQLFetchScroll est utilisé pour faire défiler un curseur autour d’un curseur. SQLFetchScroll prend en charge l’extraction des ensembles de lignes suivants, précédents, précédents et derniers ensembles de lignes en plus de la récupération relative (extraire l’ensemble de lignes n lignes à partir du début de l’ensemble de lignes actuel) et l’extraction absolue (extraire l’ensemble de lignes à partir de la ligne n). Si n est négatif dans une extraction absolue, les lignes sont comptées à partir de la fin du jeu de résultats. Une extraction absolue de ligne -1 équivaut à l'extraction de l'ensemble de lignes qui démarre à la dernière ligne du jeu de résultats.
Les applications qui utilisent SQLFetchScroll uniquement pour ses fonctionnalités de curseur de bloc, telles que les rapports, sont susceptibles de passer par le jeu de résultats une seule fois, en utilisant uniquement l’option permettant d’extraire l’ensemble de lignes suivant. Les applications basées sur l’écran, d’autre part, peuvent tirer parti de toutes les fonctionnalités de SQLFetchScroll. Si l’application définit la taille de l’ensemble de lignes sur le nombre de lignes affichées à l’écran et lie les mémoires tampons d’écran au jeu de résultats, elle peut traduire les opérations de barre de défilement directement aux appels à SQLFetchScroll.
Opération de barre de défilement | Option de défilement SQLFetchScroll |
---|---|
Page précédente | SQL_FETCH_PRIOR |
Page suivante | SQL_FETCH_NEXT |
Ligne précédente | SQL_FETCH_RELATIVE avec FetchOffset égal à -1 |
Ligne suivante | SQL_FETCH_RELATIVE avec FetchOffset égal à 1 |
Case de défilement vers le haut | SQL_FETCH_FIRST |
Case de défilement vers le bas | SQL_FETCH_LAST |
Position aléatoire de la case de défilement | SQL_FETCH_ABSOLUTE |