2009-12-11 17 views
0

est ici le code de sortie de mon proc stocké:difficulté à créer un jeu d'enregistrements à partir d'un SQL Server 2005 requête avec PIVOT

SELECT * 
FROM 
(
    select q.ccypair, q.vega, t.label 
    from #parallel q 
    LEFT JOIN TPRR_vega_weights t ON q.Tenor = t.Tenor 
) a 
PIVOT 
(
    Sum(Vega) 
    for a.label in ([t1],[t2],[t3],[t4],[t5],[t6],[t7],[t8],[t9],[t10],[t11],[t12],[t13],[t14],[t15],[t16],[t17],[t18]) 
)p 
order by ccypair 

fonctionne très bien dans SQL Server Management Studio, mais je reçois un fermé ADODB.Recordset lorsque J'essaie de l'ouvrir dans Excel VBA (j'ai testé le même code avec un select * de vanilla de x requête et c'était bien).

Des idées?

Répondre

1

à la fin, il n'a pas été le pivot cause du problème, il était non SET NOCOUNT ON dans la procédure stockée

0

Ma pensée est que ADO ne pas comment gérer correctement l'instruction de pivot. Si vous utilisez DAO je dirais utiliser une requête passthrough, pas nécessaire ou une option dans ADO.

Êtes-vous capable de mettre votre instruction SQL dans une procédure stockée et d'appeler la procédure stockée? De cette façon, ado ne fonctionne qu'avec les données renvoyées.

+0

il est déjà dans une procédure stockée .. – Nick