Remarque
L’accès à cette page requiert une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page requiert une autorisation. Vous pouvez essayer de modifier des répertoires.
L’insertion de données avec SQLBulkOperations est similaire à la mise à jour des données avec SQLBulkOperations , car elle utilise des données provenant des mémoires tampons d’application liées.
Afin que chaque colonne de la nouvelle ligne ait une valeur, toutes les colonnes liées ayant une valeur de longueur/d’indicateur de SQL_COLUMN_IGNORE ainsi que toutes les colonnes non liées doivent accepter des valeurs NULL ou avoir une valeur par défaut.
Pour insérer des lignes avec SQLBulkOperations, l’application effectue les opérations suivantes :
Paramètre l'attribut de l'instruction SQL_ATTR_ROW_ARRAY_SIZE sur le nombre de lignes à insérer et place les nouvelles valeurs de données dans les buffers d'application liés. Pour plus d’informations sur l’envoi de données longues avec SQLBulkOperations, consultez Données longues et SQLSetPos et SQLBulkOperations.
Définit la valeur dans la mémoire tampon longueur/indicateur de chaque colonne selon les besoins. Il s’agit de la longueur d’octet des données ou des SQL_NTS pour les colonnes liées aux mémoires tampons de chaîne, de la longueur d’octet des données pour les colonnes liées aux mémoires tampons binaires et SQL_NULL_DATA pour toutes les colonnes à définir sur NULL. L'application attribue la valeur dans la mémoire tampon de longueur/indicateur de ces colonnes à SQL_COLUMN_IGNORE, celles-ci étant définies sur leur valeur par défaut (si elle existe) ou sur NULL (si ce n'est pas le cas).
Appelle SQLBulkOperations avec l’argument Operation défini sur SQL_ADD.
Après l'exécution de SQLBulkOperations, la ligne en cours n’est pas modifiée. Si la colonne signet (colonne 0) est liée, SQLBulkOperations retourne les signets des lignes insérées dans la mémoire tampon de l’ensemble de lignes lié à cette colonne.