une boucle while ou un curseur sur la table des noms de table avec un exec dynamique exec ('insert tab select c1, c2 from ' + @tab1 )
voir aide pour détails
br
wrote in message news:
Bonjour,
j'ai la problématique suivante dont je n'arrive pas à me dépatouiller....
J'ai une table qui me liste des noms de tables de mêmes structures ( ces noms peuvent changer )
je voudrais peupler une autre table ayant une structure correspondante à ces tables avec les informations contenues dans chacune d'elles
j'ai essayer de chercher avec l'affectation d'une variable et une boucle mais je n'arrive à rien de concret.
si quelqu'un pouvait m'aider cela m'enleverait une grosse épine du pied. Merci d'avance
D
dom
Merci bruno j'ai essayé déjà mais j'ai peut être du mal avec la syntaxe.. La table1 stocke le nom de mes différentes tables et la table2 doit stocker les données provenant de ces différentes tables. Ci après ce que j'ai écrit. Merci d'avance de tes lumières
DECLARE @NUM int DECLARE @MAX int DECLARE @TAB varchar(25) SET @NUM=1 SET @MAX=(select max(num) from prod.dbo.TAB1)
table_loop: IF @num<@MAX or @NUM=@MAX BEGIN SET @TAB=(select name from prod.dbo.TAB1 where num=@num) INSERT INTO tab2 select * from where datepart(year,date)Útepart(year,getdate()) and datepart(month,date)Útepart(month,getdate()) and datepart(day,hiscalldate)Útepart(day,getdate()) GO
SET @NUM=@NUM+1 GOTO table_loop END
ELSE END
On Tue, 6 Jan 2004 09:09:14 +0100, "bruno reiter [MVP]" wrote:
ce n'est pas etout à fait clair, mais peut-etre :
une boucle while ou un curseur sur la table des noms de table avec un exec dynamique exec ('insert tab select c1, c2 from ' + @tab1 )
voir aide pour détails
br
wrote in message news:
Bonjour,
j'ai la problématique suivante dont je n'arrive pas à me dépatouiller....
J'ai une table qui me liste des noms de tables de mêmes structures ( ces noms peuvent changer )
je voudrais peupler une autre table ayant une structure correspondante à ces tables avec les informations contenues dans chacune d'elles
j'ai essayer de chercher avec l'affectation d'une variable et une boucle mais je n'arrive à rien de concret.
si quelqu'un pouvait m'aider cela m'enleverait une grosse épine du pied. Merci d'avance
D
Merci bruno
j'ai essayé déjà mais j'ai peut être du mal avec la syntaxe..
La table1 stocke le nom de mes différentes tables et la table2 doit
stocker les données provenant de ces différentes tables.
Ci après ce que j'ai écrit. Merci d'avance de tes lumières
DECLARE @NUM int
DECLARE @MAX int
DECLARE @TAB varchar(25)
SET @NUM=1
SET @MAX=(select max(num) from prod.dbo.TAB1)
table_loop:
IF @num<@MAX or @NUM=@MAX
BEGIN
SET @TAB=(select name from prod.dbo.TAB1 where num=@num)
INSERT INTO tab2
select * from bd1.dbo.@TAB
where datepart(year,date)Útepart(year,getdate())
and datepart(month,date)Útepart(month,getdate())
and datepart(day,hiscalldate)Útepart(day,getdate())
GO
SET @NUM=@NUM+1
GOTO table_loop
END
ELSE
END
On Tue, 6 Jan 2004 09:09:14 +0100, "bruno reiter [MVP]"
<remove.this.br33@bol.com.br> wrote:
ce n'est pas etout à fait clair, mais peut-etre :
une boucle while ou un curseur sur la table des noms de table
avec un exec dynamique
exec ('insert tab select c1, c2 from ' + @tab1 )
voir aide pour détails
br
<dom@dom.fr> wrote in message news:nu73vv0sc53cgj0knh2q77dpk4h5c2t5ma@4ax.com...
Bonjour,
j'ai la problématique suivante dont je n'arrive pas à me
dépatouiller....
J'ai une table qui me liste des noms de tables de mêmes structures (
ces noms peuvent changer )
je voudrais peupler une autre table ayant une structure correspondante
à ces tables avec les informations contenues dans chacune d'elles
j'ai essayer de chercher avec l'affectation d'une variable et une
boucle mais je n'arrive à rien de concret.
si quelqu'un pouvait m'aider cela m'enleverait une grosse épine du
pied.
Merci d'avance
Merci bruno j'ai essayé déjà mais j'ai peut être du mal avec la syntaxe.. La table1 stocke le nom de mes différentes tables et la table2 doit stocker les données provenant de ces différentes tables. Ci après ce que j'ai écrit. Merci d'avance de tes lumières
DECLARE @NUM int DECLARE @MAX int DECLARE @TAB varchar(25) SET @NUM=1 SET @MAX=(select max(num) from prod.dbo.TAB1)
table_loop: IF @num<@MAX or @NUM=@MAX BEGIN SET @TAB=(select name from prod.dbo.TAB1 where num=@num) INSERT INTO tab2 select * from where datepart(year,date)Útepart(year,getdate()) and datepart(month,date)Útepart(month,getdate()) and datepart(day,hiscalldate)Útepart(day,getdate()) GO
SET @NUM=@NUM+1 GOTO table_loop END
ELSE END
On Tue, 6 Jan 2004 09:09:14 +0100, "bruno reiter [MVP]" wrote:
ce n'est pas etout à fait clair, mais peut-etre :
une boucle while ou un curseur sur la table des noms de table avec un exec dynamique exec ('insert tab select c1, c2 from ' + @tab1 )
voir aide pour détails
br
wrote in message news:
Bonjour,
j'ai la problématique suivante dont je n'arrive pas à me dépatouiller....
J'ai une table qui me liste des noms de tables de mêmes structures ( ces noms peuvent changer )
je voudrais peupler une autre table ayant une structure correspondante à ces tables avec les informations contenues dans chacune d'elles
j'ai essayer de chercher avec l'affectation d'une variable et une boucle mais je n'arrive à rien de concret.
si quelqu'un pouvait m'aider cela m'enleverait une grosse épine du pied. Merci d'avance
D
bruno reiter [MVP]
dans ta boucle :
EXEC ('INSERT INTO tab2 select * from bd1.dbo.' + @TAB + ' where datepart(year,date) = datepart(year,getdate()) and datepart(month,date) datepart(month,getdate()) and datepart(day,hiscalldate) datepart(day,getdate())')
tu peux aussi éviter d'utiliser * et mettre les noms des colonnes
br
wrote in message news:
Merci bruno j'ai essayé déjà mais j'ai peut être du mal avec la syntaxe.. La table1 stocke le nom de mes différentes tables et la table2 doit stocker les données provenant de ces différentes tables. Ci après ce que j'ai écrit. Merci d'avance de tes lumières
DECLARE @NUM int DECLARE @MAX int DECLARE @TAB varchar(25) SET @NUM=1 SET @MAX=(select max(num) from prod.dbo.TAB1)
table_loop: IF @num<@MAX or @NUM=@MAX BEGIN SET @TAB=(select name from prod.dbo.TAB1 where num=@num) INSERT INTO tab2 select * from where datepart(year,date)Útepart(year,getdate()) and datepart(month,date)Útepart(month,getdate()) and datepart(day,hiscalldate)Útepart(day,getdate()) GO
SET @NUM=@NUM+1 GOTO table_loop END
ELSE END
On Tue, 6 Jan 2004 09:09:14 +0100, "bruno reiter [MVP]" wrote:
>ce n'est pas etout à fait clair, mais peut-etre : > >une boucle while ou un curseur sur la table des noms de table >avec un exec dynamique >exec ('insert tab select c1, c2 from ' + @tab1 ) > >voir aide pour détails > >br > > wrote in message
news:
>> Bonjour, >> >> j'ai la problématique suivante dont je n'arrive pas à me >> dépatouiller.... >> >> J'ai une table qui me liste des noms de tables de mêmes structures ( >> ces noms peuvent changer ) >> >> je voudrais peupler une autre table ayant une structure correspondante >> à ces tables avec les informations contenues dans chacune d'elles >> >> j'ai essayer de chercher avec l'affectation d'une variable et une >> boucle mais je n'arrive à rien de concret. >> >> si quelqu'un pouvait m'aider cela m'enleverait une grosse épine du >> pied. >> Merci d'avance >> >> D >
dans ta boucle :
EXEC ('INSERT INTO tab2 select * from bd1.dbo.' + @TAB + ' where
datepart(year,date) = datepart(year,getdate()) and datepart(month,date) datepart(month,getdate()) and datepart(day,hiscalldate) datepart(day,getdate())')
tu peux aussi éviter d'utiliser * et mettre les noms des colonnes
br
<dom@dom.fr> wrote in message news:25skvvkm9d8214eb019j25o3q2bbf4ri57@4ax.com...
Merci bruno
j'ai essayé déjà mais j'ai peut être du mal avec la syntaxe..
La table1 stocke le nom de mes différentes tables et la table2 doit
stocker les données provenant de ces différentes tables.
Ci après ce que j'ai écrit. Merci d'avance de tes lumières
DECLARE @NUM int
DECLARE @MAX int
DECLARE @TAB varchar(25)
SET @NUM=1
SET @MAX=(select max(num) from prod.dbo.TAB1)
table_loop:
IF @num<@MAX or @NUM=@MAX
BEGIN
SET @TAB=(select name from prod.dbo.TAB1 where num=@num)
INSERT INTO tab2
select * from bd1.dbo.@TAB
where datepart(year,date)Útepart(year,getdate())
and datepart(month,date)Útepart(month,getdate())
and datepart(day,hiscalldate)Útepart(day,getdate())
GO
SET @NUM=@NUM+1
GOTO table_loop
END
ELSE
END
On Tue, 6 Jan 2004 09:09:14 +0100, "bruno reiter [MVP]"
<remove.this.br33@bol.com.br> wrote:
>ce n'est pas etout à fait clair, mais peut-etre :
>
>une boucle while ou un curseur sur la table des noms de table
>avec un exec dynamique
>exec ('insert tab select c1, c2 from ' + @tab1 )
>
>voir aide pour détails
>
>br
>
><dom@dom.fr> wrote in message
>> Bonjour,
>>
>> j'ai la problématique suivante dont je n'arrive pas à me
>> dépatouiller....
>>
>> J'ai une table qui me liste des noms de tables de mêmes structures (
>> ces noms peuvent changer )
>>
>> je voudrais peupler une autre table ayant une structure correspondante
>> à ces tables avec les informations contenues dans chacune d'elles
>>
>> j'ai essayer de chercher avec l'affectation d'une variable et une
>> boucle mais je n'arrive à rien de concret.
>>
>> si quelqu'un pouvait m'aider cela m'enleverait une grosse épine du
>> pied.
>> Merci d'avance
>>
>> D
>
EXEC ('INSERT INTO tab2 select * from bd1.dbo.' + @TAB + ' where datepart(year,date) = datepart(year,getdate()) and datepart(month,date) datepart(month,getdate()) and datepart(day,hiscalldate) datepart(day,getdate())')
tu peux aussi éviter d'utiliser * et mettre les noms des colonnes
br
wrote in message news:
Merci bruno j'ai essayé déjà mais j'ai peut être du mal avec la syntaxe.. La table1 stocke le nom de mes différentes tables et la table2 doit stocker les données provenant de ces différentes tables. Ci après ce que j'ai écrit. Merci d'avance de tes lumières
DECLARE @NUM int DECLARE @MAX int DECLARE @TAB varchar(25) SET @NUM=1 SET @MAX=(select max(num) from prod.dbo.TAB1)
table_loop: IF @num<@MAX or @NUM=@MAX BEGIN SET @TAB=(select name from prod.dbo.TAB1 where num=@num) INSERT INTO tab2 select * from where datepart(year,date)Útepart(year,getdate()) and datepart(month,date)Útepart(month,getdate()) and datepart(day,hiscalldate)Útepart(day,getdate()) GO
SET @NUM=@NUM+1 GOTO table_loop END
ELSE END
On Tue, 6 Jan 2004 09:09:14 +0100, "bruno reiter [MVP]" wrote:
>ce n'est pas etout à fait clair, mais peut-etre : > >une boucle while ou un curseur sur la table des noms de table >avec un exec dynamique >exec ('insert tab select c1, c2 from ' + @tab1 ) > >voir aide pour détails > >br > > wrote in message
news:
>> Bonjour, >> >> j'ai la problématique suivante dont je n'arrive pas à me >> dépatouiller.... >> >> J'ai une table qui me liste des noms de tables de mêmes structures ( >> ces noms peuvent changer ) >> >> je voudrais peupler une autre table ayant une structure correspondante >> à ces tables avec les informations contenues dans chacune d'elles >> >> j'ai essayer de chercher avec l'affectation d'une variable et une >> boucle mais je n'arrive à rien de concret. >> >> si quelqu'un pouvait m'aider cela m'enleverait une grosse épine du >> pied. >> Merci d'avance >> >> D >
dom
Merci Bruno j'ai essayé mais il me met les messages suivants : Serveur : Msg 170, Niveau 15, État 1, Ligne 20 Line 20: Incorrect syntax near ')'. correspond à la fin de l'exec... Serveur : Msg 137, Niveau 15, État 1, Ligne 5 Must declare the variable '@NUM'. je la déclare pourtant ...
Je suis j'avoue un peu perdu!
Merci de ton aide
On Tue, 6 Jan 2004 14:44:31 +0100, "bruno reiter [MVP]" wrote:
dans ta boucle :
EXEC ('INSERT INTO tab2 select * from bd1.dbo.' + @TAB + ' where datepart(year,date) = datepart(year,getdate()) and datepart(month,date) >datepart(month,getdate()) and datepart(day,hiscalldate) >datepart(day,getdate())')
tu peux aussi éviter d'utiliser * et mettre les noms des colonnes
br
wrote in message news:
Merci bruno j'ai essayé déjà mais j'ai peut être du mal avec la syntaxe.. La table1 stocke le nom de mes différentes tables et la table2 doit stocker les données provenant de ces différentes tables. Ci après ce que j'ai écrit. Merci d'avance de tes lumières
DECLARE @NUM int DECLARE @MAX int DECLARE @TAB varchar(25) SET @NUM=1 SET @MAX=(select max(num) from prod.dbo.TAB1)
table_loop: IF @num<@MAX or @NUM=@MAX BEGIN SET @TAB=(select name from prod.dbo.TAB1 where num=@num) INSERT INTO tab2 select * from where datepart(year,date)Útepart(year,getdate()) and datepart(month,date)Útepart(month,getdate()) and datepart(day,hiscalldate)Útepart(day,getdate()) GO
SET @NUM=@NUM+1 GOTO table_loop END
ELSE END
On Tue, 6 Jan 2004 09:09:14 +0100, "bruno reiter [MVP]" wrote:
>ce n'est pas etout à fait clair, mais peut-etre : > >une boucle while ou un curseur sur la table des noms de table >avec un exec dynamique >exec ('insert tab select c1, c2 from ' + @tab1 ) > >voir aide pour détails > >br > > wrote in message
news:
>> Bonjour, >> >> j'ai la problématique suivante dont je n'arrive pas à me >> dépatouiller.... >> >> J'ai une table qui me liste des noms de tables de mêmes structures ( >> ces noms peuvent changer ) >> >> je voudrais peupler une autre table ayant une structure correspondante >> à ces tables avec les informations contenues dans chacune d'elles >> >> j'ai essayer de chercher avec l'affectation d'une variable et une >> boucle mais je n'arrive à rien de concret. >> >> si quelqu'un pouvait m'aider cela m'enleverait une grosse épine du >> pied. >> Merci d'avance >> >> D >
Merci Bruno
j'ai essayé mais il me met les messages suivants :
Serveur : Msg 170, Niveau 15, État 1, Ligne 20
Line 20: Incorrect syntax near ')'.
correspond à la fin de l'exec...
Serveur : Msg 137, Niveau 15, État 1, Ligne 5
Must declare the variable '@NUM'.
je la déclare pourtant ...
Je suis j'avoue un peu perdu!
Merci de ton aide
On Tue, 6 Jan 2004 14:44:31 +0100, "bruno reiter [MVP]"
<remove.this.br33@bol.com.br> wrote:
dans ta boucle :
EXEC ('INSERT INTO tab2 select * from bd1.dbo.' + @TAB + ' where
datepart(year,date) = datepart(year,getdate()) and datepart(month,date) >datepart(month,getdate()) and datepart(day,hiscalldate) >datepart(day,getdate())')
tu peux aussi éviter d'utiliser * et mettre les noms des colonnes
br
<dom@dom.fr> wrote in message news:25skvvkm9d8214eb019j25o3q2bbf4ri57@4ax.com...
Merci bruno
j'ai essayé déjà mais j'ai peut être du mal avec la syntaxe..
La table1 stocke le nom de mes différentes tables et la table2 doit
stocker les données provenant de ces différentes tables.
Ci après ce que j'ai écrit. Merci d'avance de tes lumières
DECLARE @NUM int
DECLARE @MAX int
DECLARE @TAB varchar(25)
SET @NUM=1
SET @MAX=(select max(num) from prod.dbo.TAB1)
table_loop:
IF @num<@MAX or @NUM=@MAX
BEGIN
SET @TAB=(select name from prod.dbo.TAB1 where num=@num)
INSERT INTO tab2
select * from bd1.dbo.@TAB
where datepart(year,date)Útepart(year,getdate())
and datepart(month,date)Útepart(month,getdate())
and datepart(day,hiscalldate)Útepart(day,getdate())
GO
SET @NUM=@NUM+1
GOTO table_loop
END
ELSE
END
On Tue, 6 Jan 2004 09:09:14 +0100, "bruno reiter [MVP]"
<remove.this.br33@bol.com.br> wrote:
>ce n'est pas etout à fait clair, mais peut-etre :
>
>une boucle while ou un curseur sur la table des noms de table
>avec un exec dynamique
>exec ('insert tab select c1, c2 from ' + @tab1 )
>
>voir aide pour détails
>
>br
>
><dom@dom.fr> wrote in message
>> Bonjour,
>>
>> j'ai la problématique suivante dont je n'arrive pas à me
>> dépatouiller....
>>
>> J'ai une table qui me liste des noms de tables de mêmes structures (
>> ces noms peuvent changer )
>>
>> je voudrais peupler une autre table ayant une structure correspondante
>> à ces tables avec les informations contenues dans chacune d'elles
>>
>> j'ai essayer de chercher avec l'affectation d'une variable et une
>> boucle mais je n'arrive à rien de concret.
>>
>> si quelqu'un pouvait m'aider cela m'enleverait une grosse épine du
>> pied.
>> Merci d'avance
>>
>> D
>
Merci Bruno j'ai essayé mais il me met les messages suivants : Serveur : Msg 170, Niveau 15, État 1, Ligne 20 Line 20: Incorrect syntax near ')'. correspond à la fin de l'exec... Serveur : Msg 137, Niveau 15, État 1, Ligne 5 Must declare the variable '@NUM'. je la déclare pourtant ...
Je suis j'avoue un peu perdu!
Merci de ton aide
On Tue, 6 Jan 2004 14:44:31 +0100, "bruno reiter [MVP]" wrote:
dans ta boucle :
EXEC ('INSERT INTO tab2 select * from bd1.dbo.' + @TAB + ' where datepart(year,date) = datepart(year,getdate()) and datepart(month,date) >datepart(month,getdate()) and datepart(day,hiscalldate) >datepart(day,getdate())')
tu peux aussi éviter d'utiliser * et mettre les noms des colonnes
br
wrote in message news:
Merci bruno j'ai essayé déjà mais j'ai peut être du mal avec la syntaxe.. La table1 stocke le nom de mes différentes tables et la table2 doit stocker les données provenant de ces différentes tables. Ci après ce que j'ai écrit. Merci d'avance de tes lumières
DECLARE @NUM int DECLARE @MAX int DECLARE @TAB varchar(25) SET @NUM=1 SET @MAX=(select max(num) from prod.dbo.TAB1)
table_loop: IF @num<@MAX or @NUM=@MAX BEGIN SET @TAB=(select name from prod.dbo.TAB1 where num=@num) INSERT INTO tab2 select * from where datepart(year,date)Útepart(year,getdate()) and datepart(month,date)Útepart(month,getdate()) and datepart(day,hiscalldate)Útepart(day,getdate()) GO
SET @NUM=@NUM+1 GOTO table_loop END
ELSE END
On Tue, 6 Jan 2004 09:09:14 +0100, "bruno reiter [MVP]" wrote:
>ce n'est pas etout à fait clair, mais peut-etre : > >une boucle while ou un curseur sur la table des noms de table >avec un exec dynamique >exec ('insert tab select c1, c2 from ' + @tab1 ) > >voir aide pour détails > >br > > wrote in message
news:
>> Bonjour, >> >> j'ai la problématique suivante dont je n'arrive pas à me >> dépatouiller.... >> >> J'ai une table qui me liste des noms de tables de mêmes structures ( >> ces noms peuvent changer ) >> >> je voudrais peupler une autre table ayant une structure correspondante >> à ces tables avec les informations contenues dans chacune d'elles >> >> j'ai essayer de chercher avec l'affectation d'une variable et une >> boucle mais je n'arrive à rien de concret. >> >> si quelqu'un pouvait m'aider cela m'enleverait une grosse épine du >> pied. >> Merci d'avance >> >> D >