J'utilise un logiciel nommé INSQL, qui est un logiciel industriel se basant
sur une base de données SQL SERVER 2000, qui permet de récupérer différentes
données d'un site de production et de les stocker dans une table de la base
assez spéciale, puisque très fortement compressée. Ce logiciel fournit
différentes procédure stockée permettant de récupérer les données de cette
table compresée.
J'extrait donc les valeurs via macro sur une feuille Excel afin de pouvoir
dresser des rapports.
Afin d'éviter d'exucuter x fois la procédure stockée à partir de ma macro
d'Excel, je souhaite créer une autre procédure stockées qui ferait
- les appel à la première première
- regroupe les resultat dans une table temporaire
- puis un select * de cette table temporaire afin de renvoyer un
recordset à excel
Maintenant ma question :
Après un "exec ProcStockée" comment récupérer les resultats (1 seule ligne,
plusieurs colonnes) afin de insérer dans ma table temporaire ne contenant
pas le même nombre de colonne.
J'espère que vous m'avez compris, je reste à votre disposition si vous avez
des question.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
David Brabant
"FAUCHILLE Stéphan" wrote
Après un "exec ProcStockée" comment récupérer les resultats (1 seule ligne, plusieurs colonnes) afin de insérer dans ma table temporaire ne contenant pas le même nombre de colonne.
Crée une table temporaire (#) dans laquelle tu insères ton result set comme ceci :
"FAUCHILLE Stéphan" <stephan_fauchille@spie-trindel.fr> wrote
Après un "exec ProcStockée" comment récupérer les resultats
(1 seule ligne, plusieurs colonnes) afin de insérer dans ma table
temporaire ne contenant pas le même nombre de colonne.
Crée une table temporaire (#) dans laquelle tu insères ton
result set comme ceci :
Après un "exec ProcStockée" comment récupérer les resultats (1 seule ligne, plusieurs colonnes) afin de insérer dans ma table temporaire ne contenant pas le même nombre de colonne.
Crée une table temporaire (#) dans laquelle tu insères ton result set comme ceci :
Merci Beaucou pour ta réponse. C'est je que j'ai fait, mais je trouvais ça compliqué.
Une petite question encore, si ma procédure stockée renvoie plusieurs ligne est ce que insert #maTable(maColonne, monAutreColonne) exec maProcedureStockee
va me remplir automatiquement les différentes ligne dans #maTable
"David Brabant" a écrit dans le message news: bfqrnd$jjn$
"FAUCHILLE Stéphan" wrote
> Après un "exec ProcStockée" comment récupérer les resultats > (1 seule ligne, plusieurs colonnes) afin de insérer dans ma table > temporaire ne contenant pas le même nombre de colonne.
Crée une table temporaire (#) dans laquelle tu insères ton result set comme ceci :
select maColonne, 0, monAutreColonne, 'blah' from #maTable
-- David
Merci Beaucou pour ta réponse. C'est je que j'ai fait, mais je trouvais ça
compliqué.
Une petite question encore, si ma procédure stockée renvoie plusieurs ligne
est ce que
insert #maTable(maColonne, monAutreColonne)
exec maProcedureStockee
va me remplir automatiquement les différentes ligne dans #maTable
"David Brabant" <david.brabant@qwanful.design.no.invalid> a écrit dans le
message news: bfqrnd$jjn$1@news.mch.sbs.de...
"FAUCHILLE Stéphan" <stephan_fauchille@spie-trindel.fr> wrote
> Après un "exec ProcStockée" comment récupérer les resultats
> (1 seule ligne, plusieurs colonnes) afin de insérer dans ma table
> temporaire ne contenant pas le même nombre de colonne.
Crée une table temporaire (#) dans laquelle tu insères ton
result set comme ceci :
Merci Beaucou pour ta réponse. C'est je que j'ai fait, mais je trouvais ça compliqué.
Une petite question encore, si ma procédure stockée renvoie plusieurs ligne est ce que insert #maTable(maColonne, monAutreColonne) exec maProcedureStockee
va me remplir automatiquement les différentes ligne dans #maTable
"David Brabant" a écrit dans le message news: bfqrnd$jjn$
"FAUCHILLE Stéphan" wrote
> Après un "exec ProcStockée" comment récupérer les resultats > (1 seule ligne, plusieurs colonnes) afin de insérer dans ma table > temporaire ne contenant pas le même nombre de colonne.
Crée une table temporaire (#) dans laquelle tu insères ton result set comme ceci :
select maColonne, 0, monAutreColonne, 'blah' from #maTable
-- David
David Brabant
"FAUCHILLE Stéphan" wrote
Une petite question encore, si ma procédure stockée renvoie plusieurs ligne est ce que insert #maTable(maColonne, monAutreColonne) exec maProcedureStockee
va me remplir automatiquement les différentes ligne dans #maTable
Oui. Essaye ceci:
create proc myProc as begin select 1, 'a' select 2, 'b' select 3, 'c' end go
create table #maTable(a int, b varchar(255))
insert #maTable(a, b) exec myProc
select * from #maTable
-- David
"FAUCHILLE Stéphan" <stephan_fauchille@spie-trindel.fr> wrote
Une petite question encore, si ma procédure stockée renvoie plusieurs ligne
est ce que
insert #maTable(maColonne, monAutreColonne)
exec maProcedureStockee
va me remplir automatiquement les différentes ligne dans #maTable
Oui. Essaye ceci:
create proc myProc as
begin
select 1, 'a'
select 2, 'b'
select 3, 'c'
end
go
Une petite question encore, si ma procédure stockée renvoie plusieurs ligne est ce que insert #maTable(maColonne, monAutreColonne) exec maProcedureStockee
va me remplir automatiquement les différentes ligne dans #maTable
Oui. Essaye ceci:
create proc myProc as begin select 1, 'a' select 2, 'b' select 3, 'c' end go
create table #maTable(a int, b varchar(255))
insert #maTable(a, b) exec myProc
select * from #maTable
-- David
FAUCHILLE Stéphan
OK, ça marche, merci beaucoup pour la rapidité de tes réponses
"David Brabant" a écrit dans le message news: bfqtl4$r9m$
"FAUCHILLE Stéphan" wrote
> Une petite question encore, si ma procédure stockée renvoie plusieurs
ligne
> est ce que > insert #maTable(maColonne, monAutreColonne) > exec maProcedureStockee > > va me remplir automatiquement les différentes ligne dans #maTable
Oui. Essaye ceci:
create proc myProc as begin select 1, 'a' select 2, 'b' select 3, 'c' end go
create table #maTable(a int, b varchar(255))
insert #maTable(a, b) exec myProc
select * from #maTable
-- David
OK, ça marche, merci beaucoup pour la rapidité de tes réponses
"David Brabant" <david.brabant@qwanful.design.no.invalid> a écrit dans le
message news: bfqtl4$r9m$1@news.mch.sbs.de...
"FAUCHILLE Stéphan" <stephan_fauchille@spie-trindel.fr> wrote
> Une petite question encore, si ma procédure stockée renvoie plusieurs
ligne
> est ce que
> insert #maTable(maColonne, monAutreColonne)
> exec maProcedureStockee
>
> va me remplir automatiquement les différentes ligne dans #maTable
Oui. Essaye ceci:
create proc myProc as
begin
select 1, 'a'
select 2, 'b'
select 3, 'c'
end
go
OK, ça marche, merci beaucoup pour la rapidité de tes réponses
"David Brabant" a écrit dans le message news: bfqtl4$r9m$
"FAUCHILLE Stéphan" wrote
> Une petite question encore, si ma procédure stockée renvoie plusieurs
ligne
> est ce que > insert #maTable(maColonne, monAutreColonne) > exec maProcedureStockee > > va me remplir automatiquement les différentes ligne dans #maTable
Oui. Essaye ceci:
create proc myProc as begin select 1, 'a' select 2, 'b' select 3, 'c' end go