Afficher un message
Vieux 12/08/2007, 19h49   #7
Guy Gasiorowski
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [SQL 2000] Insert INTO



"Fred BROUARD" <brouardf@club-internet.fr> a écrit dans le message de news:
eJI$RFQ3HHA.1188@TK2MSFTNGP04.phx.gbl...
> Guy Gasiorowski a écrit :
>
>> Voici la conclusion de mes recherches :
>> J'ai fait une procédure stockée mais je ne suis pas plus avancée
>> CREATE PROCEDURE proc_Archive
>> AS
>>
>> DECLARE @CMD as varchar(512)
>>
>> SET @CMD='INSERT INTO VentautoAR.VEHICULE dbo.FN_LISTCOLS(''vehicule'')
>> SELECT (FN_LISTCOLS(''vehicule'')) FROM Ventauto.VEHICULE RIGHT OUTER
>> JOIN Ventauto.ARVENDU ON (Ventauto.ARVENDU.pointpst =
>> Ventauto.VEHICULE.pointpst)'
>> PRINT @CMD
>> EXEC(@cmd)
>> GO
>>
>> Un petit coup de main ?
>> Merci d'avance
>>
>>

>
> USE VentautoAR;
>
> DECLARE @SQL NVARCHAR(4000), @COLS NVARCHAR(4000);
>
> SET @COLS = ''
>
> -- concaténation des noms des colonnes :
> SELECT @COLS = @COLS + COLUMN_NAME + ', '
> FROM INFORMATION_SCHEMA.COLUMNS
> WHERE TABLE_SCHEMA = 'dbo'
> AND TABLE_NAME = 'VEHICULE';
>
> -- on enlève la dernière virgule parasite
> SET @COLS = SUBSTRING(@COLS, 1, LEN(@COLS) - 1);
>
> -- composition dynamique du SQL
> SET @SQL = 'INSERT INTO dbo.VEHICULE (' + @COLS + ') '
> + 'SELECT ' + @COLS +' '
> + 'FROM dbo.VEHICULE AS V '
> + ' RIGHT OUTER JOIN dbo.ARVENDU AS A '
> + ' ON A.pointpst = V.pointpst';
>
> -- exécution
> EXEC(@SQL);
>
> Si vous aviez lu les articles que j'ai écrit qui présente le langage
> Transact SQL sur mon site SQLpro, vous auriez vu une procédure qui
> ressemble étrangement à cela !
> http://sqlpro.developpez.com/cours/s...nsactsql/#L4.3
> procédure SP_SEARCH_STRING_ANYFIELD
>
> A +
>
> --
> Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
> Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
> Audit, conseil, expertise, formation, modélisation, tuning, optimisation
> ********************* http://www.datasapiens.com ***********************


Merci Frédéric,
Pourtant le site sqlpro est un de mes sites de références pour SQL, J'ai
cherché mais jamais je n'aurais trouvé dans cette procédure
(SP_SEARCH_STRING_ANYFIELD)
En tout cas lerci beaucoup pour la réponse, je vais tester çà.
a+
Guy


  Réponse avec citation
 
Page generated in 0,06162 seconds with 9 queries