Aide Procédure stockée SQLserver

Résolu
divxovore Messages postés 8 Statut Membre -  
divxovore Messages postés 8 Statut Membre -
Bonjour,

Je souhaiterais créer une procédure stockée qui supprime des données dans n'importe quelle table de ma db.
Dans ma clause where j'aimerais concaténer le nom de ma table passer en paramètre avec 'ID'.
Exemple: Table CATEGORY. Colonne/Clé primaire IDCATEGORY.
Comment puis-je réaliser cela.


CREATE PROCEDURE DEL_INFOS (@Tablename varchar (20), @Val int)
AS
DECLARE @SQL VARCHAR(400);
SET @SQL = 'DELETE FROM ['+@Tablename+'] WHERE ID + ['+@Tablename+'] = ['+@Val+'] '
EXECUTE (@SQL);
GO

Merci d'avance.

2 réponses

Heremion Messages postés 564 Statut Membre 102
 
Bonjour Divxovore,

La requête écrite ci-dessus te renvoie quoi dans @SQL?

0
divxovore Messages postés 8 Statut Membre
 
Voila j'ai trouver la solution à ma requête:

CREATE PROCEDURE DEL_INFOS (@Tablename varchar (20), @Id int )
AS
BEGIN
DECLARE @SQL VARCHAR(200);
DECLARE @Idtmp VARCHAR (10) = @Id;
SET @SQL = 'DELETE FROM '+ @Tablename + ' WHERE ID'+@Tablename+ '=' + @Idtmp;
EXECUTE (@SQL);
END
0