Définition des champs de descripteur
Pour modifier les champs d’un descripteur, une application peut appeler SQLSetDescField. Certains champs sont en lecture seule et ne peuvent pas être définis. (Voir le Description de la fonction SQLSetDescField .)
Les champs d’enregistrement de descripteur sont définis avec un numéro d’enregistrement (RecNumber) de 1 ou supérieur, tandis que les champs d’en-tête de descripteur sont définis avec un nombre d’enregistrements de 0. Un nombre d’enregistrements de 0 est également utilisé pour définir des champs de signet, conformément à la convention que les signets sont contenus dans la colonne 0. Cela peut laisser l’impression que les champs de signet sont contenus dans l’en-tête du descripteur, mais ce n’est pas le cas. Les champs de signet sont distincts des champs d’en-tête.
Lorsque vous définissez des champs individuellement, l’application doit suivre la séquence définie dans SQLSetDescField. Si vous définissez certains champs, le pilote doit définir d’autres champs. Cela garantit que le descripteur est toujours prêt à être utilisé une fois que l’application a spécifié un type de données. Lorsque l’application définit le champ SQL_DESC_TYPE, le pilote case activée que les autres champs qui spécifient le type sont valides et cohérents.
Si un appel de fonction qui définirait un champ de descripteur échoue, le contenu du champ de descripteur n’est pas défini après l’appel de fonction ayant échoué.