J'ai une requête dynamique qui se lit comme celui-ciSQL Server 2008 problème de requête dynamique
Alter PROCEDURE dbo.mySP
-- Add the parameters for the stored procedure here
(
@DBName varchar(50),
@tblName varchar(50)
)
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
-- Insert statements for procedure here
declare @string as varchar(50)
declare @string1 as varchar(50)
set @string1 = '[' + @DBName + ']' + '.[dbo].' + '[' + @tblName + ']'
set @string = 'select * from ' + @string1
exec @string
FIN
J'appelle comme ça
dbo.mySP 'dbtest1','tblTest'
Et je ressentais une erreur
"Msg 203, Level 16, State 2, Procedure mySP, Line 27
The name 'select * from [dbtest1].[dbo].[tblTest]' is not a valid identifier."
Qu'est-ce que wr ong? et Comment surmonter?
Merci à l'avance
Je espère vous êtes en train de vérifier l'injection SQL quelque part ... – GilaMonster
Je frémis de penser que quelqu'un pourrait même envisager d'écrire un sp comme ça. S'il vous plaît lire: http://www.sommarskog.se/dynamic_sql.html – HLGEM