Comment puis-je utiliser le Mappage de paramètres dans la Tâche d'Exécution SQL SSIS?
Je suis en train de récupérer la valeur de Key
à partir d'une table avec une simple instruction select dans SSIS par Execute SQL Task
. Mais n'avez aucune chance de trouver cette erreur.
J'ai utilisé une variable d'entrée avec de la ficelle et le type de données utilisé cette variable en paramètre de mappage dans Execute SQL Task
.
L'exécution de la requête "SELECT cast([Key] comme Int) à PARTIR de la Table où
colonne = ?" a échoué avec l'erreur suivante: "Une erreur s'est produite lors
extraire le résultat dans une variable de type (DBTYPE_I4)". Possible
l'échec raisons: Problèmes avec la question, "ResultSet" propriété non définie
correctement, les paramètres de ne pas réglée correctement, ou de connexion non établie
correctement.
Remarque : le Type de données pour Key
colonne est tinyint
Vous devez vous connecter pour publier un commentaire.
Ce message se produit lorsque le type de données par défaut pour les paramètres qui reste comme "LONG" à la place de tout ce qui est nécessaire... Dans votre cas, cela devrait être 'OCTET'
Tinyint n'est pas i4, c'est DT_UI1. http://msdn.microsoft.com/en-us/library/ms345165.aspx
Si vous modifiez votre SSIS type byte, alors vous devriez être en mesure d'attribuer les résultats de votre requête à la valeur.
Requête Source
SELECT CAST(1 AS tinyint) AS [key], ? AS foo
Tâche SQL, OLE DB CM, ligne unique jeu de résultats
Le mappage des paramètres de l'onglet
Résultat de la colonne 1 mappé à l'Utilisateur::sortie
Inspecter la valeur après la Tâche d'Exécution SQL et le résultat est 2 (prévu)
Écrire la requête comme -> SELECT cast([Key] comme Int) comme la Clé DE la Table où la colonne = ?